{
  "nbformat": 4,
  "nbformat_minor": 0,
  "metadata": {
    "colab": {
      "name": "chapter3 4th",
      "version": "0.3.2",
      "provenance": [],
      "collapsed_sections": []
    },
    "kernelspec": {
      "name": "python3",
      "display_name": "Python 3"
    }
  },
  "cells": [
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "7ZZ-WcLYcjqB",
        "colab_type": "text"
      },
      "source": [
        "조정효 'Advanced In Financial Machine Learning Chapter3 Exercise'\\\n",
        "Thanks to BlackArbsCEO and mlfinlab"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "6ALxMYcGGKdq",
        "colab_type": "code",
        "outputId": "d6a1c088-d70b-4ce2-cc87-5c98ba1e5d80",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 139
        }
      },
      "source": [
        "import numpy as np\n",
        "import pandas as pd\n",
        "!pip install -q mlfinlab\n",
        "import mlfinlab\n",
        "import matplotlib.pyplot as plt\n",
        "import seaborn as sns; sns.set()\n",
        "from google.colab import drive\n",
        "drive.mount('/content/drive')"
      ],
      "execution_count": 1,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "\u001b[?25l\r\u001b[K     |█████▋                          | 10kB 17.5MB/s eta 0:00:01\r\u001b[K     |███████████▎                    | 20kB 1.8MB/s eta 0:00:01\r\u001b[K     |█████████████████               | 30kB 2.6MB/s eta 0:00:01\r\u001b[K     |██████████████████████▌         | 40kB 1.7MB/s eta 0:00:01\r\u001b[K     |████████████████████████████▏   | 51kB 2.1MB/s eta 0:00:01\r\u001b[K     |████████████████████████████████| 61kB 2.4MB/s \n",
            "\u001b[?25hGo to this URL in a browser: https://accounts.google.com/o/oauth2/auth?client_id=947318989803-6bn6qk8qdgf4n4g3pfee6491hc0brc4i.apps.googleusercontent.com&redirect_uri=urn%3Aietf%3Awg%3Aoauth%3A2.0%3Aoob&scope=email%20https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fdocs.test%20https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fdrive%20https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fdrive.photos.readonly%20https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fpeopleapi.readonly&response_type=code\n",
            "\n",
            "Enter your authorization code:\n",
            "··········\n",
            "Mounted at /content/drive\n"
          ],
          "name": "stdout"
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "FH-ldY-tHfUR",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "file = '/content/drive/My Drive/Colab Notebooks/parq/clean_IVE_tickbidask.parq'"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "n0FxBak_J-te",
        "colab_type": "code",
        "outputId": "fbe76f64-b0d0-4f39-9ffd-55a01418607f",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 235
        }
      },
      "source": [
        "data = pd.read_parquet(file)\n",
        "data.head()"
      ],
      "execution_count": 3,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>price</th>\n",
              "      <th>bid</th>\n",
              "      <th>ask</th>\n",
              "      <th>vol</th>\n",
              "      <th>dollar_vol</th>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>date</th>\n",
              "      <th></th>\n",
              "      <th></th>\n",
              "      <th></th>\n",
              "      <th></th>\n",
              "      <th></th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>2009-09-28 09:30:00</th>\n",
              "      <td>50.79</td>\n",
              "      <td>50.70</td>\n",
              "      <td>50.79</td>\n",
              "      <td>100</td>\n",
              "      <td>5079.00</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-09-28 09:30:00</th>\n",
              "      <td>50.71</td>\n",
              "      <td>50.70</td>\n",
              "      <td>50.79</td>\n",
              "      <td>638</td>\n",
              "      <td>32352.98</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-09-28 09:31:32</th>\n",
              "      <td>50.75</td>\n",
              "      <td>50.75</td>\n",
              "      <td>50.76</td>\n",
              "      <td>100</td>\n",
              "      <td>5075.00</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-09-28 09:31:33</th>\n",
              "      <td>50.75</td>\n",
              "      <td>50.72</td>\n",
              "      <td>50.75</td>\n",
              "      <td>100</td>\n",
              "      <td>5075.00</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-09-28 09:31:50</th>\n",
              "      <td>50.75</td>\n",
              "      <td>50.73</td>\n",
              "      <td>50.76</td>\n",
              "      <td>300</td>\n",
              "      <td>15225.00</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "</div>"
            ],
            "text/plain": [
              "                     price    bid    ask  vol  dollar_vol\n",
              "date                                                     \n",
              "2009-09-28 09:30:00  50.79  50.70  50.79  100     5079.00\n",
              "2009-09-28 09:30:00  50.71  50.70  50.79  638    32352.98\n",
              "2009-09-28 09:31:32  50.75  50.75  50.76  100     5075.00\n",
              "2009-09-28 09:31:33  50.75  50.72  50.75  100     5075.00\n",
              "2009-09-28 09:31:50  50.75  50.73  50.76  300    15225.00"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 3
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "Qtw9csFVOltd",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "data.to_csv('/content/drive/My Drive/Colab Notebooks/csv/'+'clean_IVE_tickbidask.csv')"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "HCHIjlO0Phfe",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "data_for_mlfinlab = data.drop(columns=['bid','ask','dollar_vol'])\n",
        "data_for_mlfinlab.to_csv('/content/drive/My Drive/Colab Notebooks/csv/'+'clean_IVE_tickbidask2.csv')"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "GlEThzUwH84a",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "from mlfinlab import data_structures, features, filters, labeling"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "c1SINnB8Ibh1",
        "colab_type": "text"
      },
      "source": [
        "# 3.1."
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "ohGQuXMVObZa",
        "colab_type": "code",
        "outputId": "ce87a8de-ab45-4931-d212-0505d3c0e725",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 85
        }
      },
      "source": [
        "#달러 바 만들기\n",
        "\n",
        "raw_dollar_bars = data_structures.get_dollar_bars('/content/drive/My Drive/Colab Notebooks/csv/clean_IVE_tickbidask2.csv', threshold=1000000)\n",
        "#threshold = 1백만"
      ],
      "execution_count": 7,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "Reading data in batches:\n",
            "Batch number: 0\n",
            "Returning bars \n",
            "\n"
          ],
          "name": "stdout"
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "BEAySgPZQN-h",
        "colab_type": "code",
        "outputId": "4f1e35b4-3dc6-4a2d-cf44-0150b7e135b3",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 235
        }
      },
      "source": [
        "#다듬기\n",
        "dollar_bars = raw_dollar_bars.set_index(pd.to_datetime(raw_dollar_bars.date_time))\n",
        "dollar_bars = dollar_bars.drop(columns='date_time')\n",
        "dollar_bars.head()\n"
      ],
      "execution_count": 8,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>open</th>\n",
              "      <th>high</th>\n",
              "      <th>low</th>\n",
              "      <th>close</th>\n",
              "      <th>volume</th>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>date_time</th>\n",
              "      <th></th>\n",
              "      <th></th>\n",
              "      <th></th>\n",
              "      <th></th>\n",
              "      <th></th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>2009-09-28 09:46:35</th>\n",
              "      <td>50.79</td>\n",
              "      <td>51.07</td>\n",
              "      <td>50.710</td>\n",
              "      <td>51.07</td>\n",
              "      <td>19844</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-09-28 09:53:49</th>\n",
              "      <td>51.07</td>\n",
              "      <td>51.15</td>\n",
              "      <td>51.050</td>\n",
              "      <td>51.14</td>\n",
              "      <td>20324</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-09-28 09:55:26</th>\n",
              "      <td>51.14</td>\n",
              "      <td>51.15</td>\n",
              "      <td>51.129</td>\n",
              "      <td>51.14</td>\n",
              "      <td>19622</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-09-28 10:02:52</th>\n",
              "      <td>51.14</td>\n",
              "      <td>51.26</td>\n",
              "      <td>51.080</td>\n",
              "      <td>51.25</td>\n",
              "      <td>22319</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-09-28 10:10:21</th>\n",
              "      <td>51.25</td>\n",
              "      <td>51.29</td>\n",
              "      <td>51.190</td>\n",
              "      <td>51.29</td>\n",
              "      <td>21519</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "</div>"
            ],
            "text/plain": [
              "                      open   high     low  close  volume\n",
              "date_time                                               \n",
              "2009-09-28 09:46:35  50.79  51.07  50.710  51.07   19844\n",
              "2009-09-28 09:53:49  51.07  51.15  51.050  51.14   20324\n",
              "2009-09-28 09:55:26  51.14  51.15  51.129  51.14   19622\n",
              "2009-09-28 10:02:52  51.14  51.26  51.080  51.25   22319\n",
              "2009-09-28 10:10:21  51.25  51.29  51.190  51.29   21519"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 8
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "rROdf9l7oT9l",
        "colab_type": "code",
        "outputId": "612f70cd-8b92-423c-be00-eb29152e02dc",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 34
        }
      },
      "source": [
        "#바 개수\n",
        "\n",
        "len(dollar_bars)"
      ],
      "execution_count": 9,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "59578"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 9
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "R1ALoVrqgV_c",
        "colab_type": "code",
        "outputId": "0d434813-21c4-428b-fcee-b84344ddbf06",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 357
        }
      },
      "source": [
        "#인덱스 타임존 빼기 (그냥 해봄)\n",
        "\n",
        "newindex = dollar_bars.index.tz_convert(None)\n",
        "dollar_bars.index = newindex\n",
        "len(dollar_bars)"
      ],
      "execution_count": 11,
      "outputs": [
        {
          "output_type": "error",
          "ename": "TypeError",
          "evalue": "ignored",
          "traceback": [
            "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
            "\u001b[0;31mTypeError\u001b[0m                                 Traceback (most recent call last)",
            "\u001b[0;32m<ipython-input-11-068152766e58>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m()\u001b[0m\n\u001b[1;32m      1\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 2\u001b[0;31m \u001b[0mnewindex\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mdollar_bars\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mindex\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mtz_convert\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;32mNone\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m      3\u001b[0m \u001b[0mdollar_bars\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mindex\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mnewindex\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m      4\u001b[0m \u001b[0mlen\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mdollar_bars\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
            "\u001b[0;32m/usr/local/lib/python3.6/dist-packages/pandas/core/accessor.py\u001b[0m in \u001b[0;36mf\u001b[0;34m(self, *args, **kwargs)\u001b[0m\n\u001b[1;32m     89\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m     90\u001b[0m             \u001b[0;32mdef\u001b[0m \u001b[0mf\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 91\u001b[0;31m                 \u001b[0;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_delegate_method\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mname\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m     92\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m     93\u001b[0m             \u001b[0mf\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m__name__\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mname\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
            "\u001b[0;32m/usr/local/lib/python3.6/dist-packages/pandas/core/indexes/datetimelike.py\u001b[0m in \u001b[0;36m_delegate_method\u001b[0;34m(self, name, *args, **kwargs)\u001b[0m\n\u001b[1;32m    719\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    720\u001b[0m     \u001b[0;32mdef\u001b[0m \u001b[0m_delegate_method\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mname\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 721\u001b[0;31m         \u001b[0mresult\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0moperator\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mmethodcaller\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mname\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_data\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m    722\u001b[0m         \u001b[0;32mif\u001b[0m \u001b[0mname\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_raw_methods\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    723\u001b[0m             \u001b[0mresult\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mIndex\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mresult\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mname\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mname\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
            "\u001b[0;32m/usr/local/lib/python3.6/dist-packages/pandas/core/arrays/datetimes.py\u001b[0m in \u001b[0;36mtz_convert\u001b[0;34m(self, tz)\u001b[0m\n\u001b[1;32m    862\u001b[0m         \u001b[0;32mif\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mtz\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    863\u001b[0m             \u001b[0;31m# tz naive, use tz_localize\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 864\u001b[0;31m             raise TypeError('Cannot convert tz-naive timestamps, use '\n\u001b[0m\u001b[1;32m    865\u001b[0m                             'tz_localize to localize')\n\u001b[1;32m    866\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n",
            "\u001b[0;31mTypeError\u001b[0m: Cannot convert tz-naive timestamps, use tz_localize to localize"
          ]
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "Hcy03y9KgXYn",
        "colab_type": "code",
        "outputId": "dbedb0c1-b0c4-4963-8533-e3f5928fcba3",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 34
        }
      },
      "source": [
        "#겹치는 인덱스 빼기 (편의를 위해 - 이렇게 해야 됨)\n",
        "dollar_bars = dollar_bars.reset_index().drop_duplicates(subset='date_time', keep='last').set_index('date_time')\n",
        "dollar_bars.head()\n",
        "len(dollar_bars)"
      ],
      "execution_count": 12,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "58607"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 12
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "aOvEIwr2-qUo",
        "colab_type": "code",
        "outputId": "b9a4daf9-ca99-4ef3-c463-9ddb0ea2ac48",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 299
        }
      },
      "source": [
        "#그래프로 보기(잘 안보임)\n",
        "\n",
        "data.price.plot(c='r')\n",
        "dollar_bars.close.plot(c='b')"
      ],
      "execution_count": 13,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "<matplotlib.axes._subplots.AxesSubplot at 0x7fb0e5c63e80>"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 13
        },
        {
          "output_type": "display_data",
          "data": {
            "image/png": "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\n",
            "text/plain": [
              "<Figure size 432x288 with 1 Axes>"
            ]
          },
          "metadata": {
            "tags": []
          }
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "A4qg7zHI-7zY",
        "colab_type": "code",
        "outputId": "cc951dfb-1831-4d22-d273-14872a180b73",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 317
        }
      },
      "source": [
        "#그래프로 보기 - 2019-05 (조금 보임)\n",
        "\n",
        "data.price.loc['2019-05'].plot(c='r')\n",
        "dollar_bars.close.loc['2019-05'].plot(c='b')"
      ],
      "execution_count": 14,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "<matplotlib.axes._subplots.AxesSubplot at 0x7fb0e1a7ecc0>"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 14
        },
        {
          "output_type": "display_data",
          "data": {
            "image/png": "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\niBeqmwDPNKd07dqVl19+2SOuDHft2sW//vUvHA4Hdrud0aNHM336dMxmMwDx8fFcfvnlfPzxx4wd\nO/a8z781XCjmGTNmMHr0aJYsWcLXX3/N7NmzCQsL44033mDp0qXExcURENA6c/KfG++oUaO4/fbb\nSUxMZMmSJRw8eJC8vOU05rwAABBxSURBVDxCQkKYNGkS+/fvp7KyEoPB0CrxNkebvBL45Zdf0Gq1\nvPLKKyQmJnLw4EEWLVrEtddey7Bhw5gxYwbR0dEYjUbAeSNo0qRJ+Pj4tFq8Op3uvHjvuusuhg8f\njtlspkePHlX3BrZt28Z1113XKj9WZWVl/POf/2To0KFkZWVRWFjIJZdcgt1urzobjY2NrVqy1M/P\njx07djB48GDCwsI8Jt4z7btnYjaZTGzevJnIyMhWnRb94MGDvPDCC0yePJknn3ySgIAANm/eTI8e\nPQgNDQWcTW9ms5nNmzdjtVrp2bMna9asabW4LxTzpk2b6NmzJ9HR0fTr14877riDqKgoAgICKC8v\nZ82aNVx99dWt0px1oXg3btxIr169GDBgQNX3uXfv3tx3330cOXKEnTt3MnXq1BaP1SXUNui///2v\neu+996qqqqp2u121WCzqqFGj1O+++05VVVW12WxVZV977TX1scceU61Wa6vEqqq1x7t48WJVVWvG\n+9JLL6kvv/xyq8TpcDhUVVXVlJQU1W63qz///LM6fPhwtbi4WFVVZ+znmj9/vnrXXXepRUVFLRqr\nqjYu3pycHPXPf/6zum3bthaP82wZGRnqnj17qp7b7XZ17Nix6u7du88ru3LlSrV3797qkCFD1E8/\n/bQlw6yhtph37dpV9fxsr776qjp37twWjfFs9cV7rueff1796KOPWio8l/OMhsIWlpiYiNFoJCUl\nBY1Gg4+PD7Nmzarqoma1Wlm1ahXXXHMNhw4dYtasWeh0rddyVlu8H330EeC8+bdixQouv/xyjh49\nyowZM1olzjNXHp07d0aj0TBmzBj69evHc889B1T3W8/Ly2P58uX84Q9/4ODBgzz99NOtctnf0HhV\nVSU0NJTS0tJW7xIYERFB9+7dAef3NDc3l6ioqPOa/tavX88TTzzB2LFj+eKLL7jxxhtbI1yg9phD\nQkIA5432kpISVq5cybRp0zhy5Ai33HKLR8arnr7xa7VaWblyJVdccQVpaWlceeWVrRZvc1209wTS\n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\n",
            "text/plain": [
              "<Figure size 432x288 with 1 Axes>"
            ]
          },
          "metadata": {
            "tags": []
          }
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "AcvKUrxotFze",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "close = dollar_bars.close\n",
        "\n",
        "#close"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "XH5Q6jgGIZUL",
        "colab_type": "text"
      },
      "source": [
        "## (a)"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "UutmZ8VJIKpt",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "# Cusum filter의 임계값 구하기 (일별변동성)\n",
        "\n",
        "def getDailyVol(close,span0=100):\n",
        "    # daily vol reindexed to close\n",
        "    df0=close.index.searchsorted(close.index-pd.Timedelta(days=1))\n",
        "    #bp()\n",
        "    df0=df0[df0>0]\n",
        "    #bp()\n",
        "    df0=(pd.Series(close.index[df0-1],\n",
        "                   index=close.index[close.shape[0]-df0.shape[0]:]))\n",
        "    #bp()\n",
        "    try:\n",
        "        df0=close.loc[df0.index]/close.loc[df0.values].values-1 # daily rets\n",
        "    except Exception as e:\n",
        "        print(e)\n",
        "        print('adjusting shape of close.loc[df0.index]')\n",
        "        cut = close.loc[df0.index].shape[0] - close.loc[df0.values].shape[0]\n",
        "        df0=close.loc[df0.index].iloc[:-cut]/close.loc[df0.values].values-1\n",
        "    df0=df0.ewm(span=span0).std().rename('dailyVol')\n",
        "    return df0"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "-CCdcW5FJuhh",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "DailyVol = getDailyVol(close)"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "zpClZoJTK3wB",
        "colab_type": "code",
        "outputId": "85e40931-8bfd-461e-ec2e-bdb011bb6142",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 136
        }
      },
      "source": [
        "DailyVol = DailyVol.dropna()\n",
        "DailyVol.head()"
      ],
      "execution_count": 18,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "date_time\n",
              "2009-09-29 10:04:46    0.005981\n",
              "2009-09-29 10:31:39    0.004469\n",
              "2009-09-29 10:52:23    0.004376\n",
              "2009-09-29 11:34:53    0.004261\n",
              "2009-09-29 12:00:17    0.004977\n",
              "Name: dailyVol, dtype: float64"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 18
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "fXRyqYoNUFgZ",
        "colab_type": "code",
        "outputId": "45def9a2-4e1e-4aba-eaab-ae178abaaaa9",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 34
        }
      },
      "source": [
        "# 일별변동성의 평균으로 임계값 설정\n",
        "\n",
        "threshold_forcusum = DailyVol.mean()\n",
        "threshold_forcusum"
      ],
      "execution_count": 19,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "0.007361793465500182"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 19
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "osVMJIpaYSqE",
        "colab_type": "code",
        "outputId": "4e7a0796-0965-4f15-992d-a741a3ea000f",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 221
        }
      },
      "source": [
        "# cusum filter로 index 추출\n",
        "\n",
        "cusum_index = filters.cusum_filter(close,threshold_forcusum)\n",
        "cusum_index"
      ],
      "execution_count": 20,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "DatetimeIndex(['2009-09-28 12:33:18', '2009-09-29 09:27:39',\n",
              "               '2009-09-29 12:00:17', '2009-09-30 09:44:47',\n",
              "               '2009-09-30 09:56:31', '2009-09-30 12:48:14',\n",
              "               '2009-09-30 15:05:38', '2009-10-01 09:52:26',\n",
              "               '2009-10-01 11:16:04', '2009-10-01 15:51:53',\n",
              "               ...\n",
              "               '2019-06-07 11:17:10', '2019-06-10 09:46:45',\n",
              "               '2019-06-12 10:18:41', '2019-06-17 09:57:13',\n",
              "               '2019-06-18 09:39:43', '2019-06-20 09:30:00',\n",
              "               '2019-06-20 12:20:48', '2019-06-20 15:50:44',\n",
              "               '2019-06-25 09:42:50', '2019-06-28 09:30:00'],\n",
              "              dtype='datetime64[ns]', length=3165, freq=None)"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 20
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "-xCy7Bn2fxHK",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "\n",
        "t_events = cusum_index\n",
        "\n",
        "#t_events"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "oSzJkbgB-yTd",
        "colab_type": "code",
        "outputId": "ebb40872-2911-461f-c899-562dbeb6c4b3",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 299
        }
      },
      "source": [
        "#cusum filtered index 보기 (잘 안보임)\n",
        "\n",
        "f,ax=plt.subplots()\n",
        "close.plot(ax=ax,c='b')\n",
        "close.loc[cusum_index].plot(ax=ax,c='purple', marker = 'x', ls='',alpha=0.4)"
      ],
      "execution_count": 22,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "<matplotlib.axes._subplots.AxesSubplot at 0x7fb0e1925fd0>"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 22
        },
        {
          "output_type": "display_data",
          "data": {
            "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYEAAAEJCAYAAAByupuRAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4zLCBo\ndHRwOi8vbWF0cGxvdGxpYi5vcmcvnQurowAAIABJREFUeJzsvXmUXFd97/s5Y83V1V1VPaona5Yl\n2ZZkjDEekC+YBONAFgTwIwMJvIQsXpLLIgnvxQvIDTcrdvJYJO/Bg9zcm+FCSODxiI1DsBmMwdjY\nWJ7UltRSS63uVndXdw3dNZ6qOtP743SVutWaWmqNvT9r2VKfqnPO7xxJ+7v3b/8GyXVdF4FAIBCs\nSeQrbYBAIBAIrhxCBAQCgWANI0RAIBAI1jBCBAQCgWANI0RAIBAI1jBCBAQCgWANI0RAIBAI1jBC\nBAQCgWANI0RAIBAI1jBCBAQCgWANI0RAIBAI1jBCBAQCgWANI0RAIBAI1jDqlTbgbMzNlXGcMxc5\njcfDZLOly2iRsON8uVpsEXYs52qxRdixnIu1RZYlWltDKzrnqhYBx3HPKgKN71wNCDuWc7XYIuxY\nztVii7BjOZfbFuEOEggEgjWMEAGBQCBYwwgREAgEgjWMEAGBQCBYw5yXCDz88MPs3buXzZs3c/jw\nYQDm5ub4yEc+wn333cc73/lOPvaxj5HL5ZrnvPLKKzzwwAPcd999/OZv/ibZbPbSPIFAIBBcBKlX\nU5RTSyNyyqkSmaH0FbLo8nJeInDvvffy1a9+lZ6enuYxSZL48Ic/zBNPPMG3v/1tent7+au/+isA\nHMfhD//wD/nUpz7FE088wZ49e5qfCQQCwdVCZiiNa7tMPD3Obz/0BL/5Fz8k/doMB/95iEAicKXN\nuyyclwjs2bOHrq6uJcdisRi33XZb8+ebb76ZqakpAIaGhvD5fOzZsweA97///Xz3u99dLZsFAoFg\nVQgkArz831/Glh2i40WiowWG/uE1on1Rpp+fvNLmXRZWZU/AcRy+9rWvsXfvXgCmp6fp7u5uft7W\n1objOMzPz6/G7QQCgWBVMDIGKPDjv/wZ2nydtsPzhHvCHPjnIQpj+Stt3mVhVZLF/uzP/oxgMMgH\nP/jB1bhck3g8fM7vJJORVb3nhSLsWM7VYouwYzlXiy1X2o6x4WFKUyWqFZP4UIZyT5gD//QavoiP\nnhs7roh9l/ueFy0CDz/8MGNjY3zpS19Clr2FRVdXV9M1BJDL5ZBlmVgstqJrZ7Ols2bPJZMR0uni\nhRm+igg7lnO12CLsWM7VYsuVtiMzlKZQMMgezqJXTKqSRMtogaoi4WvzUygYF2VfZihNIBEg2OGV\ncZAkiXKqhJExSGxPnvaci30nsiyd1+R5yTkXfDfgc5/7HENDQ3zhC19A1/Xm8e3bt1OtVnnxxRcB\n+Jd/+Rfe/va3X8ytBAKBYFUJJAIYWQPZp1B3XNSKiWw5OI5LbKAVf+vFbQwb2Qojjx3mc//tBX7r\n4acoTRcZeewwRrZywdfMDKVXPZLpvFYCn/3sZ3nyySfJZDJ86EMfIhaL8fnPf54vf/nLDAwM8P73\nvx+AdevW8YUvfAFZlnnkkUf49Kc/Ta1Wo6enh7/8y7+8YCMFAoFgtTEyBq3rW3nt+0eR6jayA44q\noYV1CicKVOeMi7uBC/MjOXLDMwQHW/j5V/cTRqKaNcgMpc+4GjgTmaE0c0eyTD5bobYjATEfgyYc\n+dYwvff0X7CZ5yUCDz30EA899NCy48PDw2c8Z9euXXz729++YMMEAoHgUmJkKswfncOcraA4YPpl\nFEdC8avYFZPMgTQb373lgq6dGUrjb/OTH50ndmgOrVCnUJOQIz4qMyWm902x7QM7ViQERqbCga8O\noeoyz/77QcqdIe6rSdh1G7tuEYgHad/ZvmJbr+oqogKBQHCpaNsSZ+ifXsXNGNQDCrILZlDGqdvo\nPREkSbqg6448OkxmaJay7aD3RNB/Oo42YjFxrEB9SwKrapHc0b6iPITMUJrqnIGsy4z9fIqYKhEd\nLZAN6BhZA7tmXXBegxABgUCwJskdyuLUbSo+CUmWiQ22Mp0pE4yHcOoO8S2JFV8zM5RGj+ikXpzm\n4LEsetlClkCrObgSTA/N0r6xDUmVMTIGoc7z28RN7Zsif2wef6sfw3Hw5SyQoCAZRPtaKE0WefK/\nvYh0Tx8f+eWbVmSzqB0kEAjWJhKEuiMYySDVqM7cWB7JcSnOVRj8xQ342wLNjdiJH42d1+arka0w\nNzLHUI8fvWKhGCaaCS7efzguRraCqskr2iDuuKWT8kyZV1+fQa1aSC5IDqAruJJEoDvMyNcOcPR/\nDq34NYiVgEAgWFM0QjdxQfYpSC7INvgdF6tiUoz5OfbsBIV0id49PRz77hxWxeSm/3XXOa9bzRnM\nzZQozVYg5qMlb+ICEuBKINngmCtrGjPy6DCu4zLwnwbY/70RcLzrAThVm2qmjG2Y1MIa7SdWHl4q\nREAgEKwpRh4bxq7ZRPujFKaLGK0+2obnkJFQbQdSZUbzNcaGZpl6fppI1EfPXX1MPz/Jhl/afPpr\nPjpMNWcw+dMJnh3NEqpYRCZLuJzibgmpOJbN7KszbPvVnee0teFeevWr+ykVa0iWi2x7n9kKSLKE\nZViUDZMoEm4yuOL3IURAIBCsKUKdYQ7+8xAvvADTYZX2owV8NRtkGVeVQIJAvoYtS6QrWYLb20m9\nMEn/3oEzXrMwlmf0iaPQohMdL6KWTGQbFPBGWQdcWUKxXNSwjhrQmHk5RXJnR/Ma5VQJe6qM0n2y\nR3DqxSmMTIWnzDo9+6ZRqzYOoAGWLOG6Li6gWmDLLlrVWfH7ECIgEAjWBJmhNKl9U0gSBDa1Yv/g\nOEnJRSubyKqMBKgly5u6O6Dh4tRt0q/Osv7dmzjx4/Elg/Zieu/p59gTxxh7bhLZtJuzdcknIasK\nwXiA2bkqjirjq9uUZ0vkj803E79yh7LkDme54Q29RLpDjDw6TGEsT2m6SPq1WdrSJaQFv5K04E2S\nTBfLL0PNG/glCVa+DhAiIBAI1giBRIDM62mK43leTBeJWg5a1UR2QNEl7JKFArgLPveGK8c2bY7/\nx1H67jqZkNXYVwh1hhfCN6tsfvcmTrwyjbLg83cVUP0aekhHDajUHB1Hl1HqMJ0uU//JcdLH5tCj\nPpSaRduWBC4umaE0Rs5g8tkJJg5l0HWFyIkikhcQhLJgnAJgOdiud1yywa7bK34vQgQEAsGaYPr5\nSWRFojxnED2WRzNskECVpSU5AdIpv+KAPxGgOFXi5f/75yR2tJN+dYaaYfJCm8ZdwQAzPxglO5xF\nWnDPyHgiovpUlIBKLV8jIIPrV1H9MupMidKhLHPH86DKbN7TTb1YZ+7oHIk7ehj/wXGsmk3BtAik\nyigLXh5HAiWoYBs2OKBYS58xcp4hp4sRIiAQCNYEru2Sfm2WmaNzaFUbRwbZBT2sUyvUznpuNVNl\n/9+9RPKmTgrjecZemKRUqWNUTJ6QoB2Z0kzFEw4JHBdcRaJ1Yyu54Sx23Uaq27j5OmnLRjVdJECr\nWNSjOvOj81iGRaIvhpEx6Lunjx/8lx/jt11YEIDmJvMZktgUTaKWq674vQgREAgEawJ/PECkvwVe\nmkayQZZA12UiXRGsmoVdOb0rxQHqhRrIOsWJAnOZMjPTRVTDIlR1cBUoLrhkXAVwwe0MElFkKhmD\naH8L2dczSJaDUnNQFkWISg5oZZOaZCAh4WvxYWQquA4YUZ3I7MlBXcITF7vkTf/dRcc9Q13W3d27\n4vciREAgEKwJqlmDynQJVwXX9YrFKbqKoirY5jmialzI6DJKoUr+cAlNlpDq3jDc2AS2lIWVRUhj\nx7u2ktyRZPS7R5l5OYUW0ail7WXZuRKgmC71skkgAZlDGfy9ESafm8A/V23mGDSQTzkXPJGSAUmV\nsYyV7wmIjGGBQLAm8McD2JaDZEs4moSuyWgRjWhvFKyzJ3A5gJ6rMjdbRrFArbsonNxABlBtUFWZ\nWH8LpckC1VyVXb/3BoLtYaq56lkHW9dxsKoW9XIdPaSRfm0WCYlTpcll4aayZ5OD93t7YQWSHppd\n8XsRIiAQCNYE1ayBWazjqhL1iA+tM4yqq5RnyguhNmdHN73B/1SPfONnF5Bcl9JkkXBPlEAyiCTL\ntG5shbNM0F0AV8IsmxRPFBn97lGUdRFkywsBOlWeJFVC1mU0n4wkgSt7SWOKruCca0VzGoQ7SCAQ\nXHc0Qjinn5/EdVy6b1/H+I/HqOar2EEN2yfTsyWJMVMCGRSfim1Z57zuWWfzgGu6+CI60f4WWjfG\nSWxPooW0pUuGU5AASfZ+LU4XcYDZkSyuT0Gt2ktERpbAdV0UWQFFQmr1UTIsNMNCViT0kLaCt3Tu\nZxIIBIJrkkAiwMTT46SHZjn4L6/zFx/6Fs+8PIkvrBGo2ai2i21Y6FE/N//6zRd9v0bkTqg7hBbx\nMX80d7JXgCSh+M+91FACKvVynXKmDI6LUrNRF65tKaBHNPSoDz2kE0gGadsUR5dl1JqDrXv7Gq4j\nVgICgUCAkTFQdJlCvsb0kRyt8wb1oEqqUEdyoa4rOKZNbH0r8Y3xZVGXjdnxuYbUheRiL3IHqOaq\nxLclGHjb+pNfcl0cy2lu4J4O13IxMgb+wRhGsYpadXBkLxrIUbyoUH/ER8ctHVh1B8d2KU8WsCsm\njuTi6Cqy6WAWzRW/KyECAoHguqPRNeyZ/dOoQZlYyiZQ8UpCGMkgvrKJXfWydIPtQZxFG8PnW+Nz\n8fdsGS/0U5Yopcr4W/3Nz4pTJWRVRjXts4qK6zpU56veQL7gHpJlkDUZf1eEwbcM0HJDK8FkkKnn\nTmAbJkaxhlyxcG1PiiR95Y1whDtIIBBccVazgXqjtaML+ObrKLbruVccLy7fN1ejc2uCQDJINWcQ\nSobQI4t86ec5jloL39NbddyITvLGBK7jEmgLkh+db34vviVOsD109tFW8sJWy5kyimUjN2yQQdUU\n2te3Eruhle439tC6Mc6ej7+RvnsHaemJNK8rqzKR7uj5vqYmQgQEAsEVp+HDbwhBOVVi4unxC2qZ\naGQrjD55jJppY2sQnCojA6beKL7mEnYkbvy1nehRH+nX08i6Cprsbe6ew33f8P/7XIiubyHaGaVv\nc4KO3d2su6OX2nyVrtt6mt/f8M7NqEH1rL4lxwFMFyxwTTB1GTOkNstZRPtbaN0UJ3sw26xZJAGy\nrlKP+rCCGpHeKJJ2HmFOpyDcQQKB4Ioz/fwkgYSff//7l9hz9yD1iSLBZOCsNfxhaSG3xs+u7VAY\nm+fpkTThdBXVtAknA6i6SqpUw1eyqBWqSLLMhgc24Xck2ja2YcyWcRSwQjpqqb4srLPh/wevOih4\nvvzet/XT95YB2rbEGXnsMPVCjdxwtmlTYnsSSZaWXoBlPwIn9xdcRSZousiKTKg9hB710XtPP+VU\nqdmW0l3IUh64McnA2zeQfXr8fBcxSxAiIBAIriiNximvffMQzxfLTJwo8Nabuzn+3RF2/+fbznqe\n6zgc+OoQA28dpNIeJPezcSZ/MEbkti7CT42iGRZmSEP1qQQ7wmxsiRPqb2H2qTEmfnScti1xOm/q\nRPFr+Nr81Ap1zJBKqGrj2KcP7ncBVdeIbYgRHWjl5o/ubg74Gx7YRO5QlkB8aVHn5M5OcsPZM64G\nGvsLDWHQDAtkCS3mI74tQc+bvHIQoc7wkr7EvhY/d3z8NpI7O0jv7uLgV0R7SYFAcI0RSAR4/X++\nhqxJtL+aJt8dZv/LaTa/ZwszL6eQZJnE9qRXYnmhL2/b5jhGpuI1XclW+MbHvsNE3Eev4XBDd5SX\n/2k/qmFjRjTWtQbpvX0d5Zky6+7up+vWHipvvYEj3xomN5xlYEcXkXURzGKcqVQR2bJRQxr12kkR\ncCSvJASAq0qEe6P03N5L7z0DSwblUwfpBpLk+ewdy1lWCgKWloBo4DouwfYQPW/uWyYqAC0DLfS9\npb/Z4yC5swPtwysf0oUICASCK4qRMdDDGoe/dRBJkQhPFDnS6kP65iGiAzFwPZeKkalw4CuvYcwb\njFdNeu7ux/rpCVIHszhVi47jLoWojnJDG858FcencMub+5FlGbNiceOv7STYHl6I308S35bEyBgA\ntG2K45o2W8M6gV0dzP7Da9RVcC2oBxRU04aFfjO+jiCxgRjZQxmSN52+ycypBBJBZE3xGsBI3h6A\nzMmZ/+kikmRNppI28Mf8J3MOFnE6N1nblsT5vvYmQgQEAsEVo+HScWzI6BLhdI16UKE1V4PBGLZh\nEe2LNqOEXMfl2AtTSMDYwRyOKqHl66iON5j63BrHn5vwpt4+hZmfTxPqCtN7d39zRdFg8azd1+Kj\nVjS56w9vJ7mzg6FYgJ/9xTNoUT/pQg1TlwmYEBmM0nFLFzt+4yZe/NzzFMYL5/WclUwF1a+AIpMN\nyrTM1WFRsTeHk5UrbAXsgIpatbCrFpkDaTa+e8sqvO3TI0RAIBBcMRpRQVp7AL3mYPlkfGUbU5eo\n5AzWvbmXoz8cJRgP0H1LN5HeFlwJVMNBavTTlbyZtILXcrEyVUbyyYQKLoZbJ7mjndgNrQQSZ26+\nKMkSt/zu7qZrpfPWHja9awtjPzjOwF29OEWTaFClOl+j984+kjs72PPx25aEgp4NLaQRaAuQ2NHB\nLYMxsgcyHHtiBBywZK8rWGM5ILkQURUc1UXxKZjllSeArQQhAgKB4IphZAyCyQDfeuQn1DqDtB7N\n4wJa3cWyHY5+b5TcvIGky9x0XwHbtBaSsryYf1jIqtW8tpAsNHeXqg6O7tJ9Tz9W1evLeDqXSoNT\nXSuBRIB62eKGd2zk5o/uBmDkscOUJovU8l4DmuTOjjP2HD6Vto1xFFUh0hNh/QObAJh9dYbSVBHJ\nAUcFFo31kuui+lVCHWHaNsXP6x4XihABgUBwyTk1lBOgOFUktW+KwvE8pfYAbcPzaAEVp+gVcjPn\n65jzdVQ83/nwY8NYuF75hVOibKItfnK2g1ao49je9y0kKqkKN//OLlo3rmwgNTIGm9+7lbbN8eWR\nP2dZUZyJzj3dtAzGllwvtqGVSqaCJbnI1qIHcqBeqhPsCNF/7wCde7pXfL+VIERAIBBccoxMhcPf\nPMjGd28mubODcqrEsR+O49oulXSZ+OE8pk9BqTrgl7GrTjNiZqFUPlbZEwd14QMXr66OJoFpWIRC\nKrWFBuwO4JMkAokA1Vx1xUlnp1s1nCny50Kv51gO8S1xyqNzzdpCQLNFpWVYtG2On3UFsxoIERAI\nBJec/Ng8+bF5vvfJH7Bfg/s2JallKhRTJbSQj3pEQ7IcogNR5o7OLwujXPx7RwJNgdZNceJbk6Re\nnKQ2X8MtmkiyRKlNJ26DHlDJHcwS355sJlhdTUT6Wjj+vaOoFdNzZS0gAYqq4I/5mXk5xab3bLuk\ndggREAgEl5zafI3aXJXp4QztdZt9Q2kCdRdZVyiqEprp4GoKtazhtUo85fyGKDgLewGhzjDbf+0m\nbvjFDQx//QDHvnOE8myFjoEovrAfLaRRnMgT6gpTGitcUPmJS00gHsDM173Q00UxorIELi6yJhPs\nuPTCJURAIBBccqK9XmEzuW6j1Fy0mu3tg5oO/oVZsNsiUcnWwfbqIdjuybBJhYUoGiDcEUTxKRTH\n8wDs+r03EOmNMvXcCbSQzsZ3bybYHuLAV/Zjlk02vnvzVbkSkFWZ5E3tTP08tSRZTFEkVF3FXtRQ\n5lIiREAgEFxyYhtakX1eh/clvn7nZC1+ShZ6VMcyTCzToR5WCeSXdvuqxP2ETIfEtgRmxWzW6Gnd\nGMffFliy8brtgzvIHcouyw+4WohvTjD8jYNLcgQkQA1ruLaLZdnoLb5LbocQAYFAcMmZeSmFFlCQ\nJAlHcZHthbaKC597fnCZcE8E17RRYn7mhtJo3SFkvI1l13axEn623LuB3MEMbVsTzXIKq72Re1mQ\noDZnLGlv7OJFRQGoUZ3O3Zc2MgjOo5T0ww8/zN69e9m8eTOHDx9uHh8dHeV973sf9913H+973/s4\nfvz4eX0mEAjWHsUTBWZfTmGrCnrCv+xzV4Zgmx/XtEns6MAtW7RuaGP7B3ey5b3b2PTLW0kMtrI9\nGaFtc4KdH7nFS766Cmf450vm9XQz4qnB4gG5fXv7ZXm+c4rAvffey1e/+lV6enqWHP/0pz/Ngw8+\nyBNPPMGDDz7Ipz71qfP6TCAQrC0yQ2nMigmyjK3LXt38U9B1mWhvFMWvURzP0317D2/5P9/KjR/c\nQSAZIrm9nTs/ew83/upOeu/uo5I2ltTsvxbxx/yokTM3hrfNlfcLvhDOKQJ79uyhq6trybFsNsuB\nAwe4//77Abj//vs5cOAAuVzurJ8JBIK1RyARwCzWidzahR2QqZfqKLqML6ShRzRaBlrQQzq1fJVo\nb5Su29ex9QM7SO7sINQZpm1znNZNcfr2DrLhlzYT6gzTe3dfs/jbtcqm92xFVqQzDsKKvvIGMRfC\nBe0JTE9P09HRgaJ4RiqKQnt7O9PT07iue8bP2traVnSfePzc/rxkMrLyB7gECDuWc7XYIuxYzuWy\nJfVqCmfWYPu7tvI3f/MMEVdC0RVaOkK0Dbax5d1bMDIG5XSZ8kyZrl1dbPiFDXTe1HnS1vdsv+T2\nX4k/G3uqjBbQqC/sAZxK8oa2y2LXVb0xnM2WcJwzt31OJiOk08XLaJGw43y5WmwRdiznctoydThD\n6sUpShUTtWTiyhLdu7qwCzU6b+qk/U6vWYqRMQgkAhgZA6U7dFnf1ZX6s1G6Q9TKpxcAgPHnT6zY\nLlmWzmvyvJgLEoGuri5mZmawbRtFUbBtm9nZWbq6unBd94yfCQSCtUV+bJ56sc4z3ztCeK5OLaZT\nTxt0v6mHaG+U3HCW3rv7m1E8V3U0zyXArp2+exmAGrg8c/QLajQfj8fZunUrjz/+OACPP/44W7du\npa2t7ayfCQSCtYUv4iN7KINeMKlFNXw1By2k4tou/Xf2n7Zj1prCXerpWDwgr7ur/7KYcE4R+Oxn\nP8tdd91FKpXiQx/6EO94xzsA+MxnPsNXvvIV7rvvPr7yla/wp3/6p81zzvaZQCC4vsgMpSmnSkuO\nlVMlnnnoKVzHQWnRUWs2vqJJwnSo5qoMvn09kiJd0yGeq4Gv9WQ5iyVyoEpkD2Uuiw3nXG889NBD\nPPTQQ8uOr1+/nm984xunPedsnwkEguuDRs/fas5g6tlKs07+1LMnSO+fpTxTZt//9XNmVAAXyXSo\nl03C3RHmR+bYdOcg1Sv6BFeeen7RG5BY1HHeZf0vbLgsNlzVG8MCgeDqotEXwMgYzB3JMvXcCYxM\nBTWoMT+RZ/ZIDrlUJzoQIzrQwtyRHAznwCcTdEDxqQQSQQLJIOV0GaU7dKUf6Yoi6wrOQoc0VwEW\ncsdUv3baHsKXAiECAsFVxKnNVxo9eBfXvymnShgZ44q4UhrtIONb44z94DjzI1kyY3lKlo1cs0GS\naG31o8f8dOzqQo/qyI4DdZdQZ4Touiiu7U13O2/qvGoipq4UalDDKngtxVzp5FJADZ45iWzVbbhs\ndxII1hANV8nigmblVInR7x6lZSBG7z0nN/0ag/r80RyZoVnyo/OE+lv4j/Ecv3zrOo59c5iOXZ2E\nuryYcddy2Prg8tj5y0GoM4xVNfn6f/kRJ+oWXUfncAwTzXSb5ZANqkiqzMijh8iPzSPZ4OgyjmHR\ncXMHxYkCtULtith/tRHtiVJNV3BtkC2veiqyd/xyIURAIFglGrP46ecnMXIGuYMZhh4f5rslg/fu\nXU/u64dwXRd/zI+/zU/dcbBzVfb/j1dRgxqBNj+54SzFqQKZJ0Zor7s889gx/O0Bxo9kiYZ1/LpK\n/MYkA29bD3DZVwSZoTTR3ijl17NE/TKZ3jDxAzmv7+8CVtVm5Mdj6C64ZQtHBtunoIU0DnxliI2/\nvPmyFEa7FujY1UlpukhpqoyzsBAIdoTo2NV5znNXCyECAsEq0XCVTD03Qeb1DJF1YUb3z5LQZJ5/\ncoyYrhJMBFB0mS//9uPgOiQqNrFEkOLxPKbpUJVcXFy0mtsM3avPGCgqGIYFfg0tpHn++GcrtF7i\nJuSwdB/AdRzmRuYwAwqh2TLBmcqyfr+yC5QsTLwBRnZAsh3MiokkQzlVXvNRQQ3qJROzUMfUvXZp\nIV3BLNSpl8xzn7xKCBEQCFYJr3RxCGO+yvRIlunXZ6i1+IgW60iWC7oKSBx7KUXAdpArJnUbZtIV\nLFVCr7nocNrWiqrlHXc1iWrZZP7onOc9vgxdRxbvA0z9bJLyVBEUCUdW0OpespMMnFrurCFirgRa\n1ca060QHWujcLRJHGxTG8ighFUIq6cEovWWXwmyRwlj+stkgREAguABO3cAFGPrHV3Ftl+PDGSwJ\nFBuCWc/37ShgGiaVVBnTstBqttdWEG9w1xYN5mcb18uGxeGfjlM4nGPdQsmF1d4oXvxsI48O4zou\nuSNZHv/8s9yy9wZKIzmUqoVq2k171aCK5bo4xtIMWAdvZeDWXdAkum7rIdrfsip2Xg9EB1qozVW5\n60/uoO2NPSgjef7jPz9BdODyvSMhAgLBCmlE7Ew8PU7v3X2EOsMc+dYhUj+fwizVKRZr+GsW6uLs\nHxssw0YP6+gFG9c9OVOWANdylw3+p86uJUCpOag1h3x1nuChINs+uIOjjx0mkDhzc5WVMPLoMGNP\nHcff4qfjfVsxTYuDf/8aqQOzqKbDK19/nQASwXK9GdKutGg4NRtZkpatBho4mkSkL8rMiykGF/Yz\nBNC2oY2ND2yib+8gAMn7krzp0xWyBy5PohgIERAIzpvFyVHp12ZZd2cvL/7zfkKSxJH/7xBqUPM6\nY8kgn+LSlQEbqGYMJHf5bP9MqfuN86RTvufUXeanCrz6pX2k98/gjwd525fecdHPmD+eJ/3KDNWK\nyfd/dAzFcYgfLYDl7VHIdROHhdUL4O8MoPl1rLqFMV3GYWm3sAaKC6quEEgGmfrZZHPQW+vc8rFb\nlx3r2zt4Wd+PEAGB4Byc3BitcOw7RyhNFanaDi8+eYRi3SFZdwgFVQpjFUbSJfSSdVqXjuLCWYri\nNpHlRhKR51pRFHBOqTPmAIUcNucHAAAgAElEQVSpEocfG0aRZVq3xDn8/x6k956BZW6qlbiLon1R\nHMsmmy4TcVyUuo1re/ez8QZ+l4WeuJqEU3Vov62dWqHOTLGObNr42wJU8jWcRV2zHNellCqihXXi\nWxPnfgmCy4YQAYHgFBZHw6T2TRHtjTL17ASBRBA1oDE7NEthpoylK4Rth5JfQanahLrD6Mfn0Mpn\nrgzZoDGQnm4z1dfiI9QVxiyZmOU6juNSnast+55ruThAuDdIdn+GbR/YQWrfFJV0hY53biRzIk9f\nMszok8cIJoMkticpp0rYU2fO1PW3Bgi0BVBH5pAWjLMW7tdIX2qmNNkuoZ4wLYOthLsjKKqMGtQw\ny3VmX01RkyQM00a1HHC8pvJtW+K0brz0EU2C80eIgEBwCka2wuFvHkRWJeaPzZE/lierQ26+yoaI\nn8JsGWzwGTamBkrdJbY9Ru5IDs2wsTTwL7iDGgPoqSiwzOnvSCArElrEx8Z3baacrlCeKjL544lm\nxNDiyCFp4fTydInBd6ynXqwz83KK2X1T/PAfX6bSHmRXNEguVSK+JU7uUIbSRJE7P3EHkdOIQGYo\njb/Nj6TJXljnWd6RhHfz8okialCjc083g29fj5ExOPi1/Sh+lWA8gFGs8/P9KdbVXQIRHdWvEUgE\nznJlweVGiIBAsIjMUJpqzqCSLrPv6VFwQCvUUE2XkAwZp4ijSSiW59fRTLAdm9yRHJZp48gsSZw6\nawSns6ABMli6TMCG6EAULKiXTe76r3v5zq8/ihJS8dkO1Yq15JqOdypKQKUyVcHIGfha/Fg1B/9c\nlUC6ynFySKpELlMmEfJcMcefPs4NnYGmi6ix1+Fv9TP65DHShzLnjDx1JC/qx67byPLJaqChzjBb\nP7CjuXcyd3SOt69vpV6qYxkWyR3tGBljzfUNuJoRIiAQLCL14hSpF6eolurgglq1UE0XyQHNWXDj\n1FwcDSTTG5AlG8xiHVQJyQVXBiWoYFfscw6mKtC2PYna4qeeKmFVLTa8azP+Fj8AfW8Z8MosqAp1\nXx15rtZcPDQWElbRpG7UKU+XUHUZOaIjWTRn807dxWeaKDE/pfEi+XV5nv7E99nxkVtOPvPPp3ju\nlSkcXKL5GgpnrzOvuiBpErIsU5paWv+n4XYaeeww/qivWV105LHDGJkK3W9at4I/EcGlRoiAQLCI\neqFGcbLAoWM5dMNGqdlLMmJdvGqPuuQNwY3ZuON4sfDezFzDNW1QJLDPvhPsi/vou7Ofje/ezOiT\nxygcnwfXa0IO0Lmnm9lXUswdySHNljBsB6tiggWm7G0iK7pCZbpEqD3I6PdGmT2URnVOuo5kvN4l\n82NFgv0RDnz9AGpYpeOVbgLxIL6oj5mXpgmdKCAtyNapric4KTruwkHVr+Jv82PMLy8IbWQM2jbH\nl9RO2vDAJnKHsmIlcJUhREAgWETvPf2MPzOOXjKRaxbqKS1gXcmb+WN7ytAQAVi0YWrZqEGVerG+\nZCA+dRNYCSisu7Ofm357F6HOMMH2ELlDWYDmQJnYniR2Qyu1+SqD962nVqjy+j++hgs4qoStyPgk\nmeRN7Zx4ZoLYQAvK0wsrlEX3avy+Mlb09iNUidJkASNbIbahleQtnWSOzSO7bvM5Trdx7UhezL8e\n1HCqNv5YgBvuWx73f7pIJC+jWgz+VxtCBASCBTJDaYLtIVpv6UB5bqIZ698Y5G08P/jiwVVlaRy/\nBGC51IueO0kJqZ4ALAqXbKC3+Nj24I4l/XVPN0hG+1vovaefYHuI5z77DJ23dlPP10gZdSqqRNCR\nSe+fJdQZJjOc8VYrnH423/i9FtDQW3yM/NswlXQZZ1scyyfjW6ht38xLUMCUFiKDLO/5ayENn+US\nWx8j2BESFUGvcYQICNYkiyt+FsbyRHqj+Fp8HP7mQX766EFClguuNwiqfhW7buOYLgoLs30ZtLCG\nWTCX+/0XXEDhdRH67x0k/VqK2ZdmT7pTFr5mZAxmXkktKSt9OhrNRTJDaTa/dyuHv3UIy7CQumPU\nS1WkrIlt2hTG85Tr1pLp+5n2JKyqSf7oHKWZMoWxeQo/HkNxlq5sAPytfvre0E0tXSH96iw1x0F2\nobIhRmSuTuuWuKgIeo0jRECwJkm9OIWRqeBv83P4Wwepl+o4fo3pUpXQdAXJAd2vEOwIoYc1yjNl\n7EzVm2XLoEd93oUUvKXAYlzQW30EkiH2fPyN/OAPnkAJKNiGTbg7zI0f3MG+v3kBp2pz/Mlj7PmD\n287L5oaLJf3qDNPPT+GmivgsByugkS/W8EsgVZeWnzh1JdDALJjkj8+DImOWTeSFFcDyzWCJnb92\nE4WJAqGuMMe+N8pcRKXHhi3v30ZlpiJCPq9xztloXiC4nsgMpZl4eoxoX5SZfVP829+9RG6uyvxY\nkeJwjmDKK43sSuCP+9n2wR34YgFwF/zhKjiajKxIOLaDoivL6+VIIMkSvXf2EuoMs+0D24lvjNO6\nLc4dn7qLWz9xO3s/91YifdELqgK6+Ve2oagSzrE8SqpE/ngeXBd7kQA0/PkuZ/5HXhwv0PvmXgjr\nzX2Lhv1a3AcquLbD1HMn6LilE9cG3jaA0R0h8Y4bKJ4oMXDfDRgZY+UPIbhqECsBwZrCyFaY/vkU\n6VdmkFr8hFJlanWr+Q9BWZjV+wMqrYOt9L9lgEqqxPyRLP72ABldpsOVCUR0qvNVjFR5yb6ADOCC\nbViEu71OYBt+aTPRaAAp7iO5swOATe/ZRuumOPnR+Qt6DklTcFzQai51bPTTfEdtPNQp2xENl0+o\nK8zUzyaJ9kVJz1Sa9qtBlV0f3kXqpRRzh7PUKyb50Xlu/NUdJMfy/Didp789SstN3dSLdfr2it4A\n1zJCBARrhsxQmtlXZ5j8yRiVYp3McAbZOTnwL56Uh9pD3PKxW8kezKKHdaL9rcS3xrmlI0Q5VSb1\n4jSyKqP4PTcPQN0v4a8uJJFFfcyN5JrXu/FXblzWTze5s6MpCith9LtHsQyzKT6nzvQbzxHujoAD\n1XmDeukUJVCgMJ4n2B6kOFNGksCWFq4lwfhTx9nz8Tcy81KKQCJI1209TDw9ztZf2MCezjDlVKlZ\nRVVwbSPcQYI1g5GpMP79YxRny6SHM2CCai8Pp3SB2nyVY98ZIb41DrJE554u2jbF2farO7n1D2+n\n955+Aq0BogMtyD4ZF6/xi5coAIH2IF1v6Lkkz1GaLFCb81wwp/MmyXhRSaH2MJG+KLK29J+5s/A/\nSZE8V47pUPfJaL0R9IgPSZJQAhr1Yp1tH9xB555ujIzRLJsNXiRT7919whV0HSBWAoLrisXF3wKJ\nAMlkhHKqxPTzk+gRHVlXyE6WkM2F+j2LaAyVekzHBaafP0HPHb1seOfmZU3jb/7obvreMsB//Naj\nOLbjhWM6blNR8iM5um67NCKQnyhgVs7SflCB2GAMPeqjNFXALJnIuoSkyNTrNooNsi5jVW0k2dvr\nqLf56fRr+DeHyB/P448HmlFJZ4rtF3H/1wdCBATXFYFEgANfHcKumhx4YZL4W/qYy1XpSlVI758h\n3BMB1znjEliP+ei5Yx3FySK+qI9avnbWxKdge4jC0TwSYGsy1Lxt4kBP8JJlxtbnqzhV54wNXGS/\n18YykAgwfzRLy0AMJahhFWpkpkvY2Mimg+yTcaoOtaCC7IJZMqlMFhm8fwMD996w6nYLrk6ECAiu\nGxqF0Dpu6eCFL79E9lCG/KuzlDoCzKUNApZLdiyPpDSaOp6kEfuf2J4kmAyx7s5+JEU6Zwx8rXAy\npVipnxyWzYp1yZqpu+foSSDZLkamQrgrzPZfv5l1d/Xx2t+9zJF/O4zmVzECCj7D9voV+GR0w0ai\nRsWwCXaGaNsQb64CBNc/QgQE1zwjjw4z/cIk/mSQY6/P0DUYZ1+1RqJuoxg2LaNFHBXkgIZUtZEt\nZ0mnLgevcYse8VGcKLD+nZvourXnvAbxSFeYWsYAF6TG4Cx5xy8Vin72f7a2ZWNWTI5//xjvf+rX\nAajma6hBhXrJRJLBXUhoc6qOVwupbCP5vMpBIgN4bSFEQHBNkxlKY+QMJp4eY3qqSDXmY+yZE3QW\n6kjmorh5B0qmg+co8dBbdKxyHVVV8C3sF/hb/ZjF+nnP4nvvGWDuSA7HsE+WdvYr9N4zsOrP2sCu\nLy9BsQQXzHId1a81D3Xt7mLymTGoe+9g8RXkhc5hsuWi+NWz7zcIrjuECAiuaYxMhWrWINgTRRmd\nIzxloTgnnT0K3oDnAFr1ZGqvrIFTs+h+4zr8rX60sI96vookSyezgc+DyZ+OY9dsTAUUWUJRZeya\nzeRPx1fzMZeQ2JHkxFNjp/3M6/jl7W1s/pVtzeNaWMc13eY+QqMhTWNvRAYkTaacKqMFxbCwlhB/\n2oJrlsxQmpe/9CJaQKWW8GMFNXx5bxa7JORTAmlRpyzFLyMjIesy/lY/u3//NiRZxnUcZl5OragW\nTnW+hq/ND4aNvb4F9UQJNaRRnb90LpX0/vSyYw23VuMZ/W1+6ov2K8xSHa1Fp141lgz8SzBdErsS\nGNnlpaEF1y9CBATXJJmhNAe/tp9qzmD66By5kILPWFrMzWah3r5zsryPA8i2ixbTaelv9eLiZbnp\n/llp8lbXrd0cf/IYd/7JHez48C72/91LvPBXP6Pr1ktXVK0yUzrnd4xMBV/0ZB6xi9eT+HTloZvf\ncVx8sQAbxabwmkKIgOCaoZEDEOoMe92/5qpYJZOSaRFJeSsAmaUlHGRVxqk7zZmy45ORJQlf1E//\nfTcQG4hdVBSPY9q84RNvZMeHdwE0f03tm76YRz0rWujk4L549g/gKKDIMmbFJHco0zzuazm7i0sG\nUMCqWhdUz0hw7SJEQHDN0Kj8ue2DO/BFfVRzVabnymi1pTGTepsPo2KiOy6O4zSFQZZArjsoIc1r\n1jIQu+hQyLf+P+9YdmzHh3ex48MXddmzEumJMPvKDK7k4CCjm94miANoEZ11u7rIHsqQejnVPKel\nP3bOwT2QCBBo9V86wwVXJRctAk899RR//dd/jeu6uK7Lxz72Md72trcxOjrKJz/5Sebn54nFYjz8\n8MMMDAysgsmCtUBmKM3It4fpvq2Hvr2DABQnC4z+xwgvf+cwxzv87C44qPl6cxe4EesfavHTf0cv\n86PzzB/J4bieP8gFFBkc16UwVqBlMHalHu+iCLWH6NrdyfTLM9QCCj7LQdcUlKpF/139KJpCz5t6\niayLNs8JJIJoQY0aZ/b3OzWXwbevJxAPXo7HEFwlXFTtINd1+aM/+iMeeeQRHn30UR555BH++I//\nGMdx+PSnP82DDz7IE088wYMPPsinPvWp1bJZcJ2TGUoz/sNR0vtnee7Pf8oXP/sU//6v+5l67gTF\n8QKFEwVCR+bJj897DdUBWQVfWEWL6pSmiwQTQTa9awudN3Wi+Ly5juXzCkXoYZ1Ib4SZRTPla4m+\nvQMUJ4uQ8FMYiODrj+I6Lt1vWse6N/dx80d3gwvxrYnmOYntSSK90eW1Mjg5CPjafIz9YPSSJbkJ\nrk4uuoCcLMsUi151xGKxSHt7O3Nzcxw4cID7778fgPvvv58DBw6Qy+XOdinBGiQzlKacWrrROXck\ny/QLk17Bt4k5jH8c4uBDPyLzWhq91YdatvBnqlSzBhJgKeBv8RPuiuCP+Iitb6M8W6Zv7yBb3rUF\nX8yP7ZexQir+eABFV0js7LhmO2JNPT9J2+Y4UkeYSkcICYmOPV203NBK555ukjs7uPmju5Hkpf4f\nu2ovb4CziOJ4gf57By+x9YKrjYtyB0mSxOc//3l+93d/l2AwSLlc5m//9m+Znp6mo6MDRfGmHYqi\n0N7ezvT0NG1tbatiuOD6YLGfP7RQonjo71/BqtrMluuohoNSt5EcMBSQSiCbLpLjjWYO4CoSVt1B\nC2kM/MJ6FEVm/Ts3k9ie5Pi/DRPtiTAtudRbdAajAWTbxZgtX7Mz3viWBIWxAspgFHk0R9s7NuAb\nydO1p3tJlNOpkU7GQuXR0zW9B28TPZAMXWLrBVcbFyUClmXx5S9/mS9+8Yvs3r2bffv28Qd/8Ac8\n8sgjq2JcPH7u1PtkMrIq97pYhB3LOR9bEr0t/OQfX2NsaJYNv34T+qEcsiRRmS1RrdSRHRt5YcSS\nbXBsr7SBa59MdpJsl0hHiHAiRM/WDvb8zp7m9cPdYULxIL/49g34d3div5pm4rkJkuvbLvu7Wq37\n2bf10t7fyvgjP8HRZMzhHPd89A2EO8NnvUeoNUCRPLAQVbRIDbSIRu8be4m1BC/re7la/r5eLXbA\n5bflokTg4MGDzM7Osnv3bgB2795NIBDA5/MxMzODbdsoioJt28zOztLV1bWi62ezJRznzNWyksnI\nskYdVwJhx3LOx5bMUJpioYrW5mPsiaMc2TfJDZ1RVJ+CVbfR500apd4aNf+tiomlgLaoEYzrVzDy\nBmrOh5zwL7lvoCVA2852Nrx3q7fSuKGVcrmGJUuX9V2t5p9NVXaZPpLFvbkd+bUUgVu7mD6Spbc7\ndNZ7JHZ1kh3JYRbrWLqM33GwbFAiOoqqkLi1i5rKZXsvV8vf16vFDrh4W2RZOq/J85JzLvhuQGdn\nJ6lUimPHjgFw9OhRstks/f39bN26lccffxyAxx9/nK1btwpXkGAJRqbCsX8/Qn48Dw5EZqqk988y\n89I0tWK9+Zdz8V6mzUkBgIWwSNNBVhWiPcv/8q+7fV3T1QReCehGo5RrlennJwkmA1CsU2kPYhVq\nBJMBpp+fPOt5XXu6iQ3GsCM6ruY1EkhuivOm//3N3PqJ25n40RiV2XMnogmuLy5qJZBMJvnMZz7D\n7//+7yNJ3ibUn//5nxOLxfjMZz7DJz/5Sb74xS8SjUZ5+OGHV8VgwfWFWTGZnyiiNBZ8DtgOSJbn\np1i8DpQ4fSMY13LxtwbovqNvWXhj502dy2ZW13ozlJbBGEP/8BrShgiVgoy/v4Wjj4+w/Td2nvW8\n4kQBLaTTvjnB8eM5Ip0RAm0BzGKdXb/3BloGWsgeyDRDcgVrg4vOE3jggQd44IEHlh1fv3493/jG\nNy728oLrmLYtcZSA91ew4fJh0a8uUG/RaNVVSmljybK1mQEse7+vzVfxt/qv2c3elSDJMtt/Yycj\n/7qfYLlKVc2z6zd2IsnnXtgrPpUdbxvgLbd3M/b9UVIvnsxs7ts7KARgDSIyhgVXDCNjEGoP4Uin\nDV/HVSDm1zBLNVSWR7S4gKtKaLq6pkodNIRO+vEowWdz+N80cF41j/Soj849Xez68C6q2sm2kSup\nmiq4/hAiILgiZIbSVGZLZA9lcBUv2ufUcVyyoTZT8X7QJFzTcw41vhdo8xPY0IozW0ECMgfSbHz3\nlsv1CFeUcqqEO1Wi0h6kNp6nnCqd08XVuaebQCJApDtCNV1s7o+IZvFrGyECgiuCkakw+t2jlKoW\nsrvUHdSg+bMCWkBFCytUaxaq4+CYDq7tsvneQWrzNTKvzyLLa2M5UE6VmHh6HHlbnMqJOcK3dDLx\n9Di9d/edVQjO1itZsHYRIiC4rIw8OozruBQnClQyFabH8qgy6Jy5xLEW1AkkAyi6yhv+l+2MPHoE\nI1vGF/Pjbw2w9QPbGXnsMG2b45fzUa4YRsag9+4+pH0TcAK0RIDeGzsuWWN7wfWNEAHBZaUwlufw\ntw4yadQxqzbIoCx0M5QBJGikhsgL//O3+tACGrc/dCd9ewcJJkOMPDrMurv66dzTTagzzIYHNq0Z\nt4aY0QtWEyECgkvOyKPDFMa8TNVSqoRZqqNMl5Bx0eonVwBaq44573XDavZs12Rs06ZrUTXRje/e\nQmx9K/nR+eaAKAZBgeDCECIguOS4tsuBr+3HMmzSRp2o6aDUTzaBbzY0KXsNTUwVXF3Fp8rYFQtf\ni5/uN65bcs3T1cYRCAQr56KriAoE58LfFiC+JUE+VUIv1KmVrCWbwDIgISGrMv5kAMevkR+M4o/4\niKyLEOqOXHTzl+uJ01VeLadKZIaW9x4WCM6FWAkILguJG9t5Zd8k4VT19CH9KigBFU1XufOje5BU\nBZ8Eh/71AMnt7Zfb3KuaQCLAxNPjuKbXzN7MGEwcmqf37r4rbJngWkSsBASXjJFHh/nJn/wQI1Om\nMm+gGw5nKgeo6CrB1gDdd/QSjYfof0M3etTPzb+zC39MtDxcTKgzTO/dfbgHswRTFcovz5wzPFQg\nOBNiJSC4JLz+9deZen6SkceGGf63Q+QcF9+ionANXAAJFJ/Curv7CCZDzQEt1Blm4ulxNr1n6xV4\ngqubUGeY//TAFqRvHWT3WwaFAAguGLESEKw6maE0I0+MMPXsCSRVopKu4s/WUJyFVpCL/lN9MkpA\nxanZGFmDrQ9uX1Lxs/fuvjUT+rkSyqkS1eMF3vn+HRRG5pbtEQgE54tYCQhWHSNToVaoUS/Xmc9V\nkVlaG0j2e1vBsQ0xzKJJqDNMvVQDWVo2oxWhn8tpZAyfumISLiHBhSBEQLDqtG2J076jnZ/9bBy/\n6SwtDqeC6lcJtofY/b/dRmx9K0e+5WURtwzGrpTJ1xSNjOHTrZiECAhWihABwapjZAw2378Z+3+8\niHpKAxjZArvmsOmXt9C6MU5ie5Jge4jcoSyBRPCM1xScRGQMC1YTIQKCVWXk0WH0iM74vx8hNOVV\nAG3U/pdkkDQvQDR7KMuej98OiAFMILiSCBEQrCqu7fL6P73GzNEcsu0iqXjRP5KMpEqoqkKoL4oW\n1q+0qQKBACECglXkmYeeomWgBTWkMzdewGzRiFousg3xbUnUgEK9bKEHNXrfLBKbBIKrASECgrMy\n8ugwLYMxJFkmkAgQ6gyTfm2G/Og8Xbf1NMM3A4kA/kSQV//2ZaJ39lKL6fjmajiWQ7ivhVs/8cZm\n+8PUi1PUCrUr+VgCgWABIQKCs+LaLj/5P56i4w2dzEkycUkiMzRL/MYkY98fZdN7tnLimXHSr8xw\n80d3U5jo5ZVvHCBoOuCAv83PTR++hUr6ZERL25a4iP0XCK4ShAgIzoq/LQASvPrfX8VQJMKqjKzI\njO+bpm19K9ZXXuPEj8dRgypPf+45DsguXXUH2QFZl+l+0zpS+1Jsfu/WZgij2AgWCK4ehAgIzknb\n5jipl6bRDBeTk/X/08MZ8kNp9JiParaKMVOmXZKQvUUAiutSSVeIb0lQmCg0+wEIBIKrB1E24jpn\n1coOK1LzL0uz7EPZxrEcFL+KXbNRLdAWmsGrGkiKxOxLMyBB5+7ui34WgUCw+oiVwHVMZijNwa/t\nJ388z87fupm+vYOkX5vh1b99CUmV6X/LwBnr9GeG0gQSAeaPzZH6+TT4VajWl33PcqA8Xlx+AROU\ngII/5qeWr502wUkgEFx5hAhcBhoD6mI/eDlVwsgYl3RwTO2bYvyp45Rnygy/cALjjm42TFcpHp1D\n8au03tB6xnONbIXJZyfIHEjj4mKW6kgsXzo2frZhWZ8AWZO57ZN30LZFCIBAcLUiRGCVONtAn3px\nislnxln/vm2Ym9ro82kc+Mp+rKrF/NHcJeuaVcvXkDUFs2Ki2aA9Ocas5f2hhzpC/397dx4fVXX/\nf/x1586ayZ4JCXuQJeyL7BUEXIpfUShqVfrQWtvvQ7ELWitf+WlVCNoWpVoF+yuPX5H+sK249Mei\nIqjFooAKIiA7SSCQPZnJPjOZ5d7z+yPMkJCAwUySgZzn49HKTO7Mfc92P/eec+854eVCp3yGcjgP\nlZP3YS7u4jo8vgA15W6U4MXX1eJEMSgoqkEeBUhSFJNFIEJK9hZR+NkZhvxoOH2u60f+9tMcf+sI\n5ngzikGheE8Rxz4+SVVPO+OHd8df5sZT7qYiuwJLghWbIyaiG8ucjccRQhDbPZbiU5WYNR1CG3KT\nwuk6L+ZKD/qfvuTMx6cY8bPR4cfaHDYUo4rzcDml5W4UXaACptACKujnjQkUYgD8JjCjEHD7yX0v\nmx6Te8mzgSQpSskiECG+ah/Ow2V88NN38QxLZlCvJEp3nEbz69h6x+Gp8KL6dJKyazhxqob4RCua\nT8dfF+Dw6wfoNbVvuAi0takoZ+NxqvOqKNh+GqNVxaDpTRcICMw1QXL+dZRKr0a3UWn0mNwwkXvo\niGbMQ2P5ZPtJ4j1BDKGHKzR0AvuD4fGAWhKfbCN9WBolB0uoK6yl4rhLFgFJilKyCERAyYESzHEN\nY+HUe4KY9pRx4usyLGfnUvQdcuEzgYWzZ9UEod5Zj2I2YIozUfRFEaY4C8MZRfk3pZz++BRDfjT8\nO+cRuuDEO0cQBgPl2S6M5zXl6IDZE8TsDqLbVGJ7xFH8ZSED5mRSsrcIb7mHjO9fhd9qRLMYMHgb\nNvd+u5F4uxnNGcSUZCbgDqD7z00YaQAsSRYSeieSmJFI4uAUtICGLUWODipJ0UoWgTZyHirH9WUR\nNWeqUWMt4bZxk9Z0T9kcaPo4HdA0Hco9GIwGsvcW0WtzNiffOkrigKSGWblU5ZL7C/at3ENtYQ1a\nUMd1shKl0aS+jffeQ/frmk7hrnzKDpZRtLuQpAHJOA+VsWvrCeLP1GL0NTxCGCAxwYol3kJ87wRM\ndhNl+0uo9zftMI7pFkP6+B70HJmO45qe7d75LUlS28gi0EZep4czO89QU1KHs/zCU/y11HGqag3D\nMvgDGlpeNf9+7jPSHXaChwOcfD+bwXdf2tFAyYESNE3nzLY8nJUeDKJ1F4LUFdRitHvJrfAi7CYS\nUu2IIy6sAVCNYE60YDQb0XxB0M2M/OkoSveVUJntwlftb5gn2ADmOAsChfiMBHpN7oWabpfNQJIU\n5WQRaAPnoXLKvylF6ILqM9VoLs+3bnRbaktXANWnE8irJq+wlpigwGQ3obR8ys0Fs+RtOI672ott\niAP9o9wmH64htCLR9HHibHOOIhQCMUbcZ6px51ShhhbVAF0wdsF4fHUBinbk4zzixNbNjubV0BXQ\nLQZUFBSDQkw3O4pBIUlD4YQAACAASURBVH1UOuXlLVw/IElSVJFFoA28Tg/FuwupL/VQXVuPUbvQ\nqZLfTgHUgEANaOiA0WHCX+vDeai8Vc0pOZuOc+bfJ/F7ApwyCOK1FhYyAGebqULFKvRvtyIQZ6ox\nBM69BnH2/2wpMSgmlXGPXI377mFUHHPxzWv7UUwGjEkWXClWBsXaqC93E3AHSMiQ00RK0uVCFoHv\nyHmonLKzRwF5OS5MXj288Wy8gW18m0a3dRo2si2eYWMAxahQuq+E2F7xrSoCQghqCmrw12vEBTVU\n/dy6NGj4pINgUMCggn5eZ7GxNkiQ8yaEBwxWFV91PRXHXMC5WcDyPsrFW1JL5uTeDJybyemPT1G0\nK5+4PgmyI1iSLiNtLgI+n4/f/e53fP7551gsFkaPHs3SpUs5deoUixYtoqqqisTERJYtW0ZGRkYE\nIkeHkr1FFHx6Gl9VPYaA1qojAGuqFc2vE6j2X/QUS3TwlnkwWoxUnHB96/PuW7kHdIHdYceTWxn+\nUEPFx2xXERrouoZqMyI0HYJ6s/Wf/2UwACKoY0m0Edu9adt+0sAUrEk2ht4zosmooJG+3kGSpPbV\n5iLwwgsvYLFY2Lp1K4qi4HQ6AXjmmWf40Y9+xJw5c9i4cSNPP/00a9eubXPgaJCz8Tj1VfUITacg\npxLVL5oeBZzd625MtavYUmKwJttwHXXir7zwpCo6QFDD6/QQqAtccLkQX3U9eR+fIrZnPOW5lU3+\nFt8vAccwB+WHylEtRrSgRqDWR72/PlyFLliMVDCYVXR/EFNc0+kg08f1aHKFtD09lqH3jJDzBEjS\nZaZNRcDtdrNhwwa2b9+OcrYX0+Fw4HK5OHLkCGvWrAHglltuYenSpVRUVJCcnNz21J3Ieaic8kNl\nOA+WY0uLBa043IRiAIzxJoRfRwtqCCBgV7EFdEQQkjMdKKqC0WpCUQV5H50OP2+zPtsg6JogpltD\n00pohq/UkWnhRcq/KaXg0zMIQDWp5O483ewD1QM6qaPSGfbj0Wfzl1GZU8GpD3PxOusv+Dp1A6hm\nFZPdRLcx6QTdTYtRS3v7cp4ASbr8tKkI5Ofnk5iYyMqVK/nyyy+x2+08/PDDWK1W0tLSUNWGzaOq\nqnTr1o3i4uJLKgIpKd++QUlNjWt2X8mBEnav3E3SVUmMvm80cT3iqC2qZd/f9lF1sooJv5pA+qj0\n1r/QRg7+ew9BVz1mk8r+T/Ow+hv2ow2AvbudpH5JFH1VBAokD0xi7COTOf76AUr3l+IprOWahdfg\nzHayc9nOJs+rnP1fkyEYDArdM1NJTY3juLOeg5v30v2+kYjecQxC5eCre3EMdlB9xIWv0ovaqDPY\ncPbQJOD24yt2c/WzZ083/SF8+eqX5H2Qi27g3NXAjdcLmCxGMqb1xXnMid9Zz4g5Q1p8ry/mUpdv\nLzJHc9GSReZorqOztKkIaJpGfn4+Q4cO5fHHH+fAgQPMnz+fl19+OSLhXK46dF1c8O+pqXEtnoZ4\n9KMcCvYWcWDtAXa/8Q0F1/dm1IkainfmY3PYqCyp4eY1c75Tprq6egr3FmPrHYel2od6Np5qVzHZ\nzQT8GuYECwaTyoRHJzPwtsGkDEri00XbUOPNdJvRh0+f30GgLtCsAzlEV8GgQdCvkfvZaTLuGIzb\n7aP0SClf/PJ9KoalMDavjqA/iLAYiOkTR+1/TjVpklJjTBjNBoQu8NYHmrxPpz8vIPXqNDz/Od1k\nved3YAuTgcwfDcd1qIxj23Ix9m79Xv6FPpuOJnM0Fy1ZZI7m2prFYFBatfPcWJuKQPfu3TEajdxy\nyy0AjBo1iqSkJKxWK6WlpWiahqqqaJpGWVkZ3bt3b8vqWs1X5aO2sBrdr1Nz0IntuJOTQVBV8J/y\nE9Pt0t6kxiOEOoamUvpVEbn/ycN0toVEtSikXd0DdJ2AO0D6uB4MnJPJwNsGA5A6Mo1r/3Ad1aeq\nANCDOopZAQGOIanEZySQuzE7vD7NqmLRQA9o1JxueExc73j8dUHspW4stX6q6nVEUCOn9DjJmQ4C\nQpw7s0cFk1Wl+6Se+Gr82LudGzEUYMCcTPau+BKD1kJ/gBFMMSZUqxFznJmMG65iyN3DZFu/JF2h\n2lQEkpOTmThxIjt37mTKlCmcOnUKl8tFRkYGQ4YM4b333mPOnDm89957DBkypEP6A5yHygnU+TBa\nTOg0tHmb/Gfb23VQzAoxafaLPsf5cjYdR/Np9Lkug8T+SVgSrZjPXmRlsEBctzjQBYn9k7EkWUkd\n3q3ZcA+pI9PC7fkD52RiMKvYEi1MePwaUkemsXbv/6GuoLahHyHGhOrX0esFgbNt8b4aH0GPHzUI\nSnUgfDpnwKNRsq+0Sb+EoiqYE6yYE6wMv280NkfzUzYrjjV04KtWlUC9Fn6s0WZi+P2jMcdZSOib\nEG77l239knRlavPZQUuWLOGJJ55g2bJlGI1Gnn/+eeLj41m8eDGLFi3iz3/+M/Hx8SxbtiwSeS/K\neaic09tOUV9ZT0yancr82vDGMdRUYo63EPQGydl4vNXj8riOuSg9UMwnHxynx4BkAnuKgYa9aJOi\nEt83HsWsYk2yMmDO4G89RXLML8fTe3pGk7NrEgcm46upx+fXGoZutqiA0jDRO3DszcP4zp5RdH6z\njXLeDaELjFaVpKuS6D29b4sZDCYjycNS6HVtXz7ddJyYinpU1YApxkivKX3oPa3lx0mSdGVpcxHo\n3bs3r7/+erP7+/fvz9tvv93Wp78kB1/bh+tIOYpBoexUZZMLn0J81fWUHSihvtJ70SLgPFSO1+Wh\nOq+KtNHdyN+eR1y9Rk1BHcZgw5GFwaKCqlBbWEu/WwfiGN6t1efIN1tOAWtKDL5SN3iCBI0qVoct\nvIWvPVPT7DkudKFZfEYiekDHV9vyaag2RwzXvzyT+govhTvzccSYSfpeL4L7y0kanNxsaAlJkq5c\nV9QVw6pFpfp0NdV1PlSfaFYEdMAQAG+ph5hU+0WHZPA6Pex45j/Unqkhtkcs5m4xBE/XNjn/32xU\nMMdZiE2PRfMG2zRDmGoy4i11Y1AVDPVBAn6NYGGA5EEOstcfI+hvaRyIpgxnX2TSVUmM+OloXEec\nLS4Xes0HX9uP64iTm5ZOp891/Tiz7RR7ln9B1cnKCx5BSJJ0Zbksi0Coo7bxqVSH/u8BAGJ6JVB3\nsGkbebM9ZgFBbxCvy3PB5y76PB+vy03QHaAiu7LJeDtwdgddB8fIVIzCQNLAlDa9Jm+Fh6A/iK5D\n0ASmAGia4PSOPM58chIREARp3hTUkurT1dgcMYz55fiLLhf0BBj/2CT6XNcPIPzfCxUPSZKuPJdd\nEXAeKufIGwdRjSopv50GpoaLpk68c7ThCtu0GJRG4+aE/nt+ITCfdwVsSMlXRbiOlBP0aQiN8Ia3\npY2vYlGpOOpiyuPXED+0bUMlaL6GlQnA6D93v+7Wwutu1eB0Bojvk0Dp1yVNLixrSUtFos91/cLF\nQJKkK99lVwS8Tg9le4txl7iprPCSPq03Bf84TGV2BeY4M5V7is7NhXsRWkCjOq8KW0oMnrI6/LV+\nBszJ5NSWHIo+L8AUb0aJNaG4LnxVbaDWR+9repE6KJW4No6Xk3hVIq5vyhpGExVNi1boKKRVRUBp\naPNPH9ejTXkkSeoaLrsiAJBwVRJlx11U/r+jHNuaQ1xQx2Q1EgxoqIGGvWlrspVARfMNeGiDWpHt\n4uQHOXy9Yjf+Gj8T/9c1AJhjTWheDc3rxW9oeVC1IA1X5CoGhUsa9P8iUoamkrvhxAX/fv5k7uff\nbpj/V0UxKLhL6uQgbpIktcplUQT2rdyDr7oec5wFU5yZxKuSqFMhJiAwVvnRAHs3O566hnaUgEXB\npgms6TbqS1q+yEn3CQp2FUB9wyQA7/7pc9av3ktaobvh74Cx0Za2cXOQETDGNYwR5HF6wuP7tIWn\n3I3BqqLXf3sHMDQUOhHKZYDYXnEkdI8nqOlYEq1tziNJUtcQ1UXg9EcnKT9czvH/d5SqnEpsDhuW\nRCt1Lg+2mqbDdNYV1uIL6mCAmBgTRpsJ1WSg3uBt1iEQuqnXN7S3awLii73oxd6GsfetBrR6vUnn\ncniqLR1QICY1huTBDpz7y6grqSOhx6VdgHY+k82EHmxdAYDzJn5RFayJNvpd3w9fUMOWKsfzlySp\ndaK6CJzckkvuByeor6iHINQVuakpcjdrH9cBfHp4O60qCpongKYqFxknublwM0ujAhBiS7WjIFBU\nA0mDUug9tQ+D7hjCyc05lB4oJeHqi3fCfhtPuadh0hcuHvn8zm7NBKou8JTV0ffavhh72OUQD5Ik\ntVpUF4Gc3QX4yhra9S80Sxc0n6ErWBcgISMBd3nzU0AbC21IL9Sq33huAG+pm743ZtD3xv6kj+0R\nbnMf8dPRERmAyp5+6UcSAtCsJqwBHV0IKk9WknF1mhziQZKkVmvNaeedxuhpmG+3pT3jxqdtNt6I\nKzTMhpWc6cBgVJovcIlSR6aRNj4dDOA85KTfzP7t0uk64NbMS8pptBsJ2lUcfROJ75dIjMOO85g8\nv1+SpEsT1UWgpWEf4OKhQ1fN1ld5ie8Vz/D7R0Jiy9cEtKbZpeJ4BSPuH82Ex6+hz4yMdmtqcQxP\nxZTQcs4W8xlVBk/rx4T5V5PYLwlropXYHvIIQJKkSxPVzUEtaU3VUkwK1bmV9J6eQcbM/hx6+8h3\nXp/mC1C6r4Spz133nZ+jtZL6J1O2t6RVy6oWlXGPTiR1ZBopgx189eKXKCIyp6tKktR1XDZFoMnG\nv9Ecvi11pCZclYjJZsLr9LL3lT0QvITe4fPE9YwnaVDbhoRorYDb3+T2hSadATAnWMJXBKeOTGPc\noxMRrgvPWyxJktSSy6YINGZPj8Pr9CA0HdVqxF/bMOZ+6Jz5mLRY+s8aSNAdIGWog/fuWY/g4k3u\nLW5wFRj94NWkj+2Yq29rC851Ln/bEY/B2HSJ1JFpUTVDkiRJl4fLrgjE9Y2n7/evIugJUl9Wx5nt\n+ehAMEbF6m+YKkuv10i8KuncmPhpdvQiN6azk/iGrhq+2BlH0DBUdF2Ju+Ouvj1bpRrmJRjA0X8e\nQfj1cNbGIzzrbTi6kSRJConqInD+nruiKox+8Gq6T+qNY3gqm+a8hcGskNIvibRJvQg4PRTuyKe2\nuGFv2HmoHE9ZHSgK4uxFBKpFBU1rMiR0YwZAMxkgoKPXa1Qcd7XnS2wiZbADf3U912Q1DO2cv+00\ntWcaXouuAKoCwYZSYEmwdFguSZKuXFFdBJoxgrv03J556rBUDHYjaVd3p+8N/SjZXYTRZkLXRHhg\nuL2v7IHudry6TkxARxUQY4+h9nTLzSbWVCvfe2Yae1/eTXVOZYcWgVEPXE1Cv8Rz01DeNoTs9Ufx\nOL1oniCaagBNQ7GoHdZPIUnSle2yKAK6AQw6CJ+g7EBp+P5hdw4jb3cB/WcPwp4eG75IKmlQCo7h\nqeRsrGDsgvFsXneQOgT90uPo4bBzelse9v4J1ORWn72wADCCJd7C1KXXMfC2waQMdvDhQ5sResdN\ns3X+pDQDZmfir/Vx5t95eEpqQVWwxFgxxhiJaWHeYEmSpEsV9UVAtRhIG5ZK0Buk8riLqtzK8N/s\n3ezhAgANk6H3nz0ofC5/aKOqHC4hUFdPyn/1p4epYaDp7E0nUGONpGQ6qMl2oft1Bs7JZOBtg4GG\njtbv/++bqT5V1ZEvtwnH8FRQFCwJFmKDOnEZ8WglHsx2EwFPoNNySZJ05Yjqi8Xi+yUw+K5hDJk3\nnBtW3ERSZgqm+HNt4emj0psNkWBPj23SkesuqYOiWjzdYqg/XUP3iT2pyqtGURSG3jaEGb+/joE/\nGIwp1kxVXnWT50odmdamKSMjwWQ3EfRrDL11ENc9PY2MG68i6Ncw2Vsza4IkSdLFRfWRwNRnZ2CK\nt+B1enEMT+WGFTdd0p65u6SO/O1nYEgKnqJq4semkb/9DNYkK1fdPIDxj01u0oyka9E3w7qiKPSZ\nnsHoh8Y2yapEaB4DSZK6tqguAsmDHei6CG/4UkemfeuUiY15nV56T+uDsuc0FFVjdtjpPTgNo1Wl\n+8SeTZqRxj82OSpH3xwwOxObw9Yk6+iHxkZlVkmSLj9RXQTaqqXz++3psS028TTey44mF3oN0ZhV\nkqTLT1T3CURM9LXySJIkRYUuUQTCNUA2o0uSJDXRJYpAiKwBkiRJTXWJIiCEbA+SJElqSZcoAmHy\nUECSJKmJLlEEQgcCiqwCkiRJTXSJIhAir6+SJElqqksUAdkjIEmS1LIuUQSQHcOSJEkt6hpFQJIk\nSWpRxIrAypUryczM5MSJEwDs37+f2bNnM3PmTH7605/icnXc5CySJElS60SkCBw+fJj9+/fTs2dP\nAHRdZ+HChTz99NNs3bqVcePGsXz58kis6jsJNQbJkTclSZKaanMR8Pv9ZGVlsXjx4vB9hw4dwmKx\nMG7cOADuvvtutmzZ0tZVfXfhU0QlSZKkxtpcBF5++WVmz55Nr169wvcVFxfTo0eP8O3k5GR0Xaeq\nqvNm6ZIkSZKaa9NQ0vv27ePQoUM89thjkcrTRErKtw+XnJoa963LmC0NLzM+wdaq5b+L9nreSxUt\nOSB6ssgczUVLFpmjuY7O0qYisGfPHnJzc7n++usBKCkp4Wc/+xn33nsvRUVF4eUqKiowGAwkJiZe\n0vO7XHXoF5noPTU1jvLy2m99nvr6hvl4a2u8rVr+UrU2R3uLlhwQPVlkjuaiJYvM0VxbsxgMSqt2\nnps85juvDXjggQfYsWMH27ZtY9u2baSnp7N69Wr++7//m/r6er766isA1q1bx0033dSWVUWI7BWQ\nJElqrF1mFjMYDDz//PM888wz+Hw+evbsyQsvvNAeq7oo56FybA5bk/vcJXXhOYslSZK6uogWgW3b\ntoX/ffXVV/Puu+9G8ukvmc1hI3/7GUStD4CAy0P+/nJ6T+vTqbkkSZKixRV9xbA9PZbe0/pgO1VN\nTIkH975Sek/rI+fnlSRJOuuKLgLQUAj+6wdDuM4Rx/Dv9ZYFQJIkqZErvgi4S+qoO1nNlFsyqTxR\nibukrrMjSZIkRY0rugi4S+rI336G3tP60G10Or2n9SF/+xlZCCRJks66oouA1+lt0gcQ6iPwOr2d\nnEySJCk6tMspotGipdNA7emxsl9AkiTprCv6SECSJEm6OFkEJEmSujBZBCRJkrqwqO4TMBi+fayf\n1izTEWSO5qIli8zRXLRkkTmaa0uW7/JYRQg5C7skSVJXJZuDJEmSujBZBCRJkrowWQQkSZK6MFkE\nJEmSujBZBCRJkrowWQQkSZK6MFkEJEmSujBZBCRJkrqwqC4C8jq25uR70px8T6TLRTR+V6O6CGia\nFv53NL55nUFRouPydr/fH/53Z382brcbAF3XOzVHfn5+p64/5N///jdVVVWdHQOANWvWcPr06c6O\nQUVFRXh70pnf187+rbREXbx48eLODnG+DRs28NRTT3H8+HHKysoYNmxYp2383nnnHb7++mtGjhyJ\nruudlmPTpk0sX76c7OxsAoEAGRkZnZJj8+bN4c/m+PHjjB07ttPek5KSEmbPns3u3buZPXs20DlF\ncsuWLSxYsICYmBhGjRrVae/HBx98wIIFC9B1nZEjRxIXF9cpOaDhe7Jo0SK2bNlCZmYmgwcP7pQc\n7777LosWLeLAgQN89tln3HDDDZ3y+WzYsIGlS5eSnZ1NeXk5Q4YM6fAMFxJ1A8jt2rWLtWvXsmjR\nImpqanjhhRcQQnDXXXchhOiwD7Curo6srCx27dqF0+lkxowZ9OzZs0MzALhcLp588km8Xi/z589n\nx44d/Otf/yItLa3DflhCCCorK/n1r3+N0WjkkUceoaamhlWrVnH99dfTv3//DslxPkVRyMjIYOfO\nnXz++edMnjwZXdcxGNr/ADf0ntx333306tWLZ555hokTJ7b7ei+ksLCQdevWsWTJEiZMmNCpORYt\nWkRMTAyLFi3i9ddfx2QyAXTYZxPy9ttvs3HjRhYtWoTD4WDBggUcO3aswwvSO++8w4YNG3j44Yep\nqqrij3/8I7quc8cdd3T49qQlUdcctGvXLmbOnMmECRO44YYbeOKJJ3jppZeorKzs0DcrNjaWUaNG\nsWPHDu68806efvrpDlt3Yx6Ph4kTJ/Laa68xefJkbrvttnDzR0dRFIXk5GTuuusuVq9ezaRJk0hO\nTqZ///707NmzQ7M0lp+fz/XXX8+SJUt48sknATpsIxN6T86cOcOsWbOYOHEiFRUVHD58mGAw2CEZ\nGtu/fz8DBgxgwoQJlJWVsWnTJnJzczs8R3V1NfPmzWPVqlWMHz+ePn368N577wEd99mE7Ny5k7lz\n5zJx4kQCgQADBw4kNbX5bIPt7dNPP2XevHlMmDCBG2+8kREjRvDiiy9SU1PT6QUAoqA5qLq6GqvV\nSiAQQFVVioqK2Lp1K7fffjsAGRkZfP755xw+fJgZM2a0a5PM+VkGDBiAyWRi0qRJLF68mJEjR9K3\nb1+CwWC7fqFDOQDMZjOZmZnYbDaCwSAOh4O1a9dy/fXX43A42i1D4xyh92PgwIEA/OMf/+C5555D\nVVX27t1LQUEBY8aM6ZDPpvE6Kisr+eijj3j44Yf529/+hqqqBAIBHA4Hqqq2aw6fz4fRaKRv375k\nZWVhMBhYvnw5Bw8e5JNPPkHX9fD71Z45Qt/FvLw83n33Xfr27cvTTz+N2+3mzTff5NixY0ybNq1D\nPhuA1NTU8OsOBoMUFxdTU1PDhAkTMJvN7bL+83OEvq8lJSWsWLGCgoICXn31VeLj49m0aRNHjhxp\n1/fk/M8mOzubw4cPh5uijh8/ztGjR6moqODaa6/t1GZmAEQn2bZtmxg7dqy47bbbmtyfk5Mj5s+f\nL95///3wfdnZ2WL69Omiurq6Q7MIIYSmaUIIIVatWiVuuOGGdll/a3KEHDlyRMybN0/4/f5Oy/HJ\nJ5+IkpISIYQQe/fuFSNHjhROp7PDs/zjH/8Qa9euFUII8cILL4jMzEzxwAMPiEAgIHRdb9ccjZ//\nzjvvFD/+8Y+Fy+USTqdT/P3vfxc/+clPRG1tbUQztJQjpLi4WCxYsEDcf//9Ijc3VwghRF5enhg2\nbJgoLCyMeI6LZRHi3O9my5Yt4tZbb22X9bcmx9dffy1++ctfipycHCGEEKdPnxZDhgwRBQUFHZbj\n4MGD4rbbbhO//vWvxdy5c8Urr7wiPv74YzFv3jzh9XojnuNSdUpzkNPp5O233+a3v/0tRUVFvP/+\n++G/paWlMWnSJDZu3IjX6wXAZrMxbty4djnMvlCW0JkmoQr9wAMPoGka69evp7y8nPXr13doDnH2\nrII9e/YwcOBATCYTOTk5bN++vcNyhDJMnz6dtLQ0AAYOHMj3vvc9ampqIprjYlkCgQDQ8F354osv\n+NnPfsbu3bsZMmQIaWlpGI3GiJ6F0VIORVHCZ0itXr2av/71ryQnJ5OSkkK/fv1ITEwEIns2yMV+\nN7GxsYwYMYI9e/aEO4T79u3LtGnTKC0tjViGb8sS+r6GjpQnTZqEpmns27cv4hkuliO0rejVqxfF\nxcX06NEDgD59+jB16lSKioo6JAfA8OHD+ctf/sKdd97J//zP//CrX/0KIQR9+/bFarV2/hlDHVVt\nfD5fk9tHjhwRQgjx1ltvicmTJzf5W0FBgXj00UfFL37xC1FYWCieeuop8eCDD0Zs7/dSsgghRDAY\nFEII8cEHH4jMzEwxffp0sW7dug7NEcqwfPlysXLlSvHqq6+KuXPnii1btnRojvMzZWVliQULFjR7\njo7IsmHDBnHXXXeJNWvWCCGEqK6uFmPGjBEul6tDczSm67p46qmnxNKlS9uc4VJzlJaWigULFojH\nH39cOJ1O8bvf/U7cc889oqampsOzhBQXF4sHH3xQHDhwICIZLiWHruvC5XKJRx99VPzhD38QmqaJ\n5557TsybN09UVlZ2aI7zLVy4UPzlL39pc4ZI6JAisGbNGjF37lyxbNkysX79eiHEuY2aEELcfPPN\n4sUXXxRCnDuMdLvdIisrS9x///3iySefFG63u8OzBIPB8Af44Ycfiu9///ti8eLFoq6ursNzCNHw\nZZo6daqYPHmy+OMf/9gpOTRNE5WVlWLNmjVi1qxZ4tlnn+2Uz0YIIerq6pr9ECNRjL7Ld6S2tla8\n/vrr4pZbbhFZWVnC4/F0aI7Q78br9Yply5aJ+fPni6ysrIh8Ry41S+PfjRBC3HjjjeKzzz7r8BxC\nNHwfdu/eLe69915x++23iyVLlnTK7yb0fqxbt07MmjVLPPnkk1HRFCREBxSB9evXi3nz5on9+/eL\nTZs2iWuuuUbs2LFDCHHuB/v111+LoUOHhm+H9uR0XY/YBua7ZgntMezfv1+cOHGi03JUVFQIIYRY\nsWKFOHbsWKflCO1Vrl+/PmI5vmuW0Hvi8/ki1gfQlvfkjTfeEEePHu20HI2PgCJRhNqSpaqqKvz4\nSPWNtOX3W1VVFbF+q7Z8V7/66iuRnZ0dkRyR0i5zDNfV1REbGwvA448/zpQpU7j11lsB+Pvf/87a\ntWvZsmULBoMBv9+P2Wxm4cKFlJSUkJycTGpqKr/97W+vqCxtyZGUlERaWlr4NMjOzNGtWzf52UTh\nZyN/N10jR3uIaMdwMBjkpZde4qGHHuJPf/oTJ06cYMSIEWzdujW8zD333IPJZOK1114DCF9IYrPZ\n2LdvH4MGDYrImxUtWSKRIzMzs80bmUjlkJ9NdH428ndzZedoTxErAvv27eP222+nrq6O3/zmNwgh\nWLZsGf379ycYDLJ79+7wso899hgbN24EGs6+WbVqFT6fj08//ZRf/OIXV0wWmSN6s8gc0ZtF5uhY\nERs2wmQyMW/ePO6++26gYfC3vLw8YmNjGTZsGP/85z/Dl7OnpKQwatQo3G43drud+++/P6IXkkRL\nFpkjerPIHNGb5ZBYfQAABalJREFUReboWBE7EsjMzGT27Nnhc17tdjuFhYUMHz6cW2+9laqqKrKy\nssjPz+evf/0riqJgt9sBIv5mRUsWmSN6s8gc0ZtF5uhYESsCJpOJmJiY8MVVhw4dIiMjIzzI13PP\nPYeiKCxcuJA+ffqwdOnSSK06arPIHNGbReaI3iwyR8eK+CiimqahqiqHDx8OHypt2bKF/v3789RT\nT+H1erHZbJFebVRnkTmiN4vMEb1ZZI6OEfFhI1RVRQiBy+XC6/Xym9/8hnXr1oUvJ+/INytassgc\n0ZtF5ojeLDJHB2mPiw9ycnJEZmam+OEPfyjeeuut9ljFZZdF5ojeLDJH9GaROdpfuxSB2tpasWrV\nqoiNJ3MlZJE5ojeLzBG9WWSO9tcuVwxLkiRJl4eom1lMkiRJ6jiyCEiSJHVhsghIkiR1YbIISJIk\ndWGyCEiSJHVhsghIkiR1YbIISFeURYsW8dJLL3VqhlmzZvHll192agZJai1ZBKQu6d577+Xtt99u\n8/O0VHTef/99Jk6c2ObnlqSOIIuAJElSFyaLgHRZO3LkCHPnzmXMmDE88sgj+Hw+AKqrq3nwwQeZ\nNGkS48eP58EHH6SkpASAl156ia+++oqsrCzGjBlDVlYWALm5udx///1MmDCBmTNnsnnz5ouu+803\n3+Tdd99l9erVjBkzhvnz5wNw3XXXsWvXLgBWrFjBggULeOyxxxgzZgy33norp06dYtWqVUyePJlp\n06axY8eO8HPW1tbyxBNPMGXKFKZOncpLL72EpmkRf98kKayzx62QpO/K5/OJ6dOnizVr1gi/3y8+\n+OADMXToUPHiiy+KiooKsWXLFuHxeERtba341a9+JR566KHwY++5554mA4G53W5x7bXXinfeeUcE\nAgFx+PBhMWHCBJGdnX3RDI8//rh48cUXm9w3Y8YMsXPnTiGEEK+88ooYPny4+PTTT0UgEBALFy4U\nM2bMEH/+85+F3+8Xb775ppgxY0b4sT//+c/FU089Jdxut3A6neL2228Xb7zxRiTeLklqkTwSkC5b\nBw4cIBAIcN9992EymbjpppsYMWIEAElJScycORObzUZsbCwPPfQQe/bsueBz/ec//6Fnz57cfvvt\nGI1Ghg4dysyZM9myZUubc44bN46pU6diNBq56aabqKys5IEHHsBkMnHzzTdTWFhITU0NTqeT7du3\n88QTTxATE0NKSgo/+clPeP/999ucQZIuJOKTykhSRykrKyMtLS088xNAjx49APB6vfz+97/ns88+\no7q6GgC32x2eIOR8hYWFfPPNN4wbNy58n6ZpzJ49u805U1JSwv+2Wq0kJSWFM1itVgA8Hg9lZWUE\ng0GmTJkSXl7Xdbp3797mDJJ0IbIISJet1NRUSktLEUKEC0FRURG9e/fmtdde49SpU7z11lukpqZy\n9OhRfvCDH4Tniz1f9+7dGT9+PGvWrLmkDI0LUFulp6djNpv54osvMBrlT1PqGLI5SLpsjR49GqPR\nyNq1awkEAnz44YccPHgQaNjrt1gsxMfHU1VVxcqVK5s81uFwkJ+fH749ffp08vLy2LBhA4FAgEAg\nwDfffENubu5FM6SkpFBQUBCR19OtWzeuueYa/vCHP1BXV4eu65w5c4bdu3dH5PklqSWyCEiXLbPZ\nzIoVK1i/fj0TJkxg8+bN3HjjjQDcd999+Hw+Jk2axF133cXUqVObPPbHP/4xW7duZfz48Tz77LPE\nxsayevVqNm/ezNSpU5kyZQrLly/H7/dfNMMdd9xBTk4O48aN4+c//3mbX9Pzzz9PIBDg5ptvZvz4\n8SxYsIDy8vI2P68kXYicVEaSJKkLk0cCkiRJXZjsfZKkbzFr1iyKioqa3b9kyZKInD0kSZ1JNgdJ\nkiR1YbI5SJIkqQuTRUCSJKkLk0VAkiSpC5NFQJIkqQuTRUCSJKkL+///LyXiLiXZEAAAAABJRU5E\nrkJggg==\n",
            "text/plain": [
              "<Figure size 432x288 with 1 Axes>"
            ]
          },
          "metadata": {
            "tags": []
          }
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "Z3DkxgOx_diQ",
        "colab_type": "code",
        "outputId": "0c926c63-6ca4-41b6-b490-482dd3683c80",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 317
        }
      },
      "source": [
        "#cusum filtered index 보기 (조금 보임)\n",
        "\n",
        "f,ax=plt.subplots()\n",
        "close.loc['2019-05'].plot(ax=ax,c='b')\n",
        "close.loc[cusum_index].loc['2019-05'].plot(ax=ax,c='purple', marker = 'x',ls='', )"
      ],
      "execution_count": 23,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "<matplotlib.axes._subplots.AxesSubplot at 0x7fb0ddc2dc18>"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 23
        },
        {
          "output_type": "display_data",
          "data": {
            "image/png": "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\n",
            "text/plain": [
              "<Figure size 432x288 with 1 Axes>"
            ]
          },
          "metadata": {
            "tags": []
          }
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "FPwTP8tnknJH",
        "colab_type": "text"
      },
      "source": [
        "## (b)"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "bpXgYkEckpMg",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "#vertical barrier 추가 (num_days=1)\n",
        "\n",
        "vertical_barrier = labeling.add_vertical_barrier(t_events,close,num_days=1)"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "JRsArhlllfti",
        "colab_type": "code",
        "outputId": "35b530b4-a80b-4959-c85d-e5b2b19c8741",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 1000
        }
      },
      "source": [
        "vertical_barrier"
      ],
      "execution_count": 25,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "2009-09-28 12:33:18   2009-09-29 12:34:54\n",
              "2009-09-29 09:27:39   2009-09-30 09:32:03\n",
              "2009-09-29 12:00:17   2009-09-30 12:48:14\n",
              "2009-09-30 09:44:47   2009-10-01 09:52:26\n",
              "2009-09-30 09:56:31   2009-10-01 10:00:15\n",
              "2009-09-30 12:48:14   2009-10-01 13:09:57\n",
              "2009-09-30 15:05:38   2009-10-01 15:17:05\n",
              "2009-10-01 09:52:26   2009-10-02 10:02:18\n",
              "2009-10-01 11:16:04   2009-10-02 11:19:52\n",
              "2009-10-01 15:51:53   2009-10-02 15:54:20\n",
              "2009-10-01 16:16:36   2009-10-05 09:35:27\n",
              "2009-10-02 09:32:42   2009-10-05 09:35:27\n",
              "2009-10-02 10:34:31   2009-10-05 09:35:27\n",
              "2009-10-05 10:09:51   2009-10-06 10:13:47\n",
              "2009-10-05 12:55:39   2009-10-06 13:09:38\n",
              "2009-10-06 09:31:29   2009-10-07 09:47:25\n",
              "2009-10-06 11:16:28   2009-10-07 12:14:25\n",
              "2009-10-06 14:08:35   2009-10-07 14:12:08\n",
              "2009-10-07 11:04:15   2009-10-08 11:29:32\n",
              "2009-10-08 09:29:50   2009-10-09 09:41:48\n",
              "2009-10-12 09:43:45   2009-10-13 10:02:16\n",
              "2009-10-13 10:02:16   2009-10-14 10:19:31\n",
              "2009-10-14 09:34:13   2009-10-15 09:59:26\n",
              "2009-10-14 15:04:11   2009-10-15 15:18:10\n",
              "2009-10-16 09:38:27   2009-10-19 09:35:41\n",
              "2009-10-19 10:28:55   2009-10-20 10:36:58\n",
              "2009-10-20 11:48:54   2009-10-21 11:53:07\n",
              "2009-10-21 09:52:55   2009-10-22 10:26:23\n",
              "2009-10-21 15:30:21   2009-10-22 15:49:35\n",
              "2009-10-21 15:57:44   2009-10-23 09:30:31\n",
              "                              ...        \n",
              "2019-05-17 15:49:24   2019-05-20 09:30:00\n",
              "2019-05-20 15:06:29   2019-05-21 15:32:32\n",
              "2019-05-21 09:30:00   2019-05-22 09:50:18\n",
              "2019-05-22 11:03:39   2019-05-23 11:27:47\n",
              "2019-05-23 09:30:00   2019-05-24 09:30:49\n",
              "2019-05-23 12:58:21   2019-05-24 13:08:36\n",
              "2019-05-24 09:30:49   2019-05-28 09:30:00\n",
              "2019-05-28 14:12:42   2019-05-29 14:22:49\n",
              "2019-05-28 16:00:00   2019-05-29 16:00:00\n",
              "2019-05-29 09:54:32   2019-05-30 09:58:08\n",
              "2019-05-29 11:57:48   2019-05-30 12:23:41\n",
              "2019-05-29 15:42:49   2019-05-30 15:49:10\n",
              "2019-05-30 14:47:24   2019-05-31 14:51:38\n",
              "2019-05-31 09:32:57   2019-06-03 09:30:00\n",
              "2019-06-03 10:26:03   2019-06-04 10:45:29\n",
              "2019-06-03 12:34:16   2019-06-04 13:00:18\n",
              "2019-06-04 09:30:00   2019-06-05 09:30:00\n",
              "2019-06-04 11:15:53   2019-06-05 11:22:40\n",
              "2019-06-05 09:30:00   2019-06-06 09:30:07\n",
              "2019-06-06 09:32:27   2019-06-07 09:39:54\n",
              "2019-06-06 15:35:14   2019-06-07 15:48:09\n",
              "2019-06-07 11:17:10   2019-06-10 09:30:00\n",
              "2019-06-10 09:46:45   2019-06-11 09:51:41\n",
              "2019-06-12 10:18:41   2019-06-13 10:27:19\n",
              "2019-06-17 09:57:13   2019-06-18 10:02:18\n",
              "2019-06-18 09:39:43   2019-06-19 09:57:29\n",
              "2019-06-20 09:30:00   2019-06-21 09:30:00\n",
              "2019-06-20 12:20:48   2019-06-21 12:28:50\n",
              "2019-06-20 15:50:44   2019-06-21 15:59:41\n",
              "2019-06-25 09:42:50   2019-06-26 09:54:29\n",
              "Name: date_time, Length: 3164, dtype: datetime64[ns]"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 25
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "EJ-A_JgklhUc",
        "colab_type": "code",
        "outputId": "ce4c68b8-8635-4337-8bfd-9f447b538b31",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 34
        }
      },
      "source": [
        "type(vertical_barrier)"
      ],
      "execution_count": 26,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "pandas.core.series.Series"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 26
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "sdt_FQYg7d3r",
        "colab_type": "code",
        "outputId": "a63e6543-84ff-44c3-b44f-f1b499168b89",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 317
        }
      },
      "source": [
        "#그림으로 보기 (수직선으로 그리고 시작선 끝선 표시하고 싶은데 못하겠습니다.)\n",
        "\n",
        "f,ax=plt.subplots()\n",
        "dollar_bars.close.loc['2019-05'].plot(ax=ax,c='b')\n",
        "dollar_bars.close.loc[vertical_barrier].loc['2019-05'].plot(ax=ax,marker='o',ls='')\n",
        "#수직선 그리는법..\n"
      ],
      "execution_count": 27,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "<matplotlib.axes._subplots.AxesSubplot at 0x7fb0ddb86898>"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 27
        },
        {
          "output_type": "display_data",
          "data": {
            "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYEAAAEbCAYAAAA8pDgBAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4zLCBo\ndHRwOi8vbWF0cGxvdGxpYi5vcmcvnQurowAAIABJREFUeJzt3XlAVPXeBvBn9mFfhn1zQUTAHdxR\nFE0s1+uS6bXMdm3Re1Pz7dVbmvem1rV6K01vVnYz00opNRVzX0hBTQVkEVEB2fd1mOW8f8CMLLPC\nDDMHvp9/hMOZmYfF853zWzkMwzAghBDSLXEtHYAQQojlUBEghJBujIoAIYR0Y1QECCGkG6MiQAgh\n3RgVAUII6caoCBBCSDdGRYAQQroxKgKEENKNUREghJBujIoAIYR0Y1QECCGkG6MiQAgh3Rjf0gF0\nKSurgVJpnYucSiT2KCmptnQMg1Fe82JbXoB9mSmvflwuBy4udkY9xqqLgFLJWG0RAGDV2TShvObF\ntrwA+zJTXtOj5iBCCOnGqAgQQkg3RkWAEEK6Mb1FYPPmzYiOjkZwcDDS09P1HgeA06dPY9asWZg5\ncyZmzJiBuLg40ycnhBDSYXo7hidOnIhnnnkGf/3rXw06zjAMVq9ejT179qBv375ITU3FggULMGnS\nJHC5xt14rN5+CQqFErOjAjEqzMuoxxJCCNFPbxGIiIgw6jgAcLlcVFVVAQCqqqrg4eFhdAFQKamU\nYvfRVACgQkAIISZm8iGiHA4HH3/8MZYtWwZbW1vU1NRg586dHXrOBrkSB85mUhEghBATM3kRkMvl\n2LFjB7Zt24bw8HBcvXoVK1aswJEjR2BnZ9wkhuZKK6Vwd3cwYdKOs7Y8+lBe82JbXoB9mSmv6Zm8\nCNy+fRuFhYUIDw8HAISHh8PGxgaZmZkYOHBgu5/X1VGEoqIqU8XsMHd3B6vKow/lNS+25QXYl5ny\n6sflciCR2Bv3GFOH8PLyQn5+Pu7evQsAyMzMRElJCQICAtr9nEI+F7OjAk0VkRBCSBO9dwIbN25E\nXFwciouLsWTJEjg7O+PIkSNaj7u7u+Pdd9/F8uXLweFwAAD/+te/4Ozs3O6Qix/vR/0BhBBiBhyG\nYax2cYvnN8ahsKwOX62JtnSUNujW1Lwor/mxLTPl1c8qmoPMIa+kxtIRCCGkS2JFEahvUJjsuZQM\ng6OX76O6Tmay5ySEELay6qWkVZq6FjosPjkf+0/dQUVNA348nYmZkT0xM7K3aZ6cEEJYyKrvBJ6b\nGgoAUCg63m0Rn5yP3UdTUVHToD72y4V7OHblfoefmxBC2MqqiwCvKZ3CBBszHDibiQa5ss3xn87c\nRVVtg4ZHEEJI12flRaCxHcgURaCkUqrxuFLJ4P9+vokGmen6HQghhC2sughw1UWg7Tt4Y0kcRRqP\n29sIcDe3Ev85lMKKreAIIcSUrLsIcBrjmeLiPDsqENxWHcxCPhcLJgVh/sQgXE0vwv7Tdzr8OoQQ\nwiZWPTpI3Rxkgo5hVwcRmtcSiaOoxT4FxRV1iEvIhsRRjMeG+Xf49QghhA3YUQR03Ankl9biVmaJ\nzgt3g0yBr5v2JACAf700El6uti3OeSo6CKWVUvxwMgOujmKEB7t3MD0hhFg/624O4ukvAm/v/AN7\nT2ZApmHkj8ovF7JQWFan/lwk4LV9LS4HL04PRS8fR+w8lIzM3IoOJDfMxVt5yCmqNvvrEEKINlZd\nBJpqgEEdw9qKQFZeJY5deYBxg3zw9qJwDAlyg6OdQOO5IgEPb8wdCBd7ET756SYKymrbnV0fJcNg\n15Hb2PBNgtlegxBC9LHqIsA1ok9AJm87xFOuUOLr31LhZCfEkxMC0cfPCa/PGQiejq0uHW2FWPHk\nIADAR/tvmG0OQUV1Q1NGGpFECLEcqy4CKffLAABfH03Fqm0XEZ+cr/VcTXcCRy8/QE5RNZ6OCYat\nWPO7f028XG3xxpyBKK2U4tOfb5llDoFq7SKuqdbEIISQdrDqInAk/tGSDqoN57UVgtazgR8W1+DQ\nxSwM6+eBIUHGd/L28XPCS9NDkZlbgf8cToHSxCtuS2lyGiHEClh1EZC3urA3yJX46UymxnOb3wko\nlQy+PnobIgEPCx/r2+7Xj+jngfnRfXA1rQj7T5l2DoGqCCgZhgoCIcRirHqIqCZlVVKs3n4JvX0c\n0dvbUX1cpnhUBE5dy0FmbiVemBYCJzthh17vsWH+KK6ob5xD4CTGYxGmmUPQ0Gx57Iu38hA91M8k\nz0sIIcaw6jsBTWxFfPTwckBGTgV+aPbuXNb0brq4vA4/n72L/r1dTbIlJYfDwVMTgzAkyA0//J6B\na+lFHX5OAKhvymsr4iMuIZuWrCCEWIRV3wkI+C1rlJDPxV8n91Vf3MuqpDh34yF+uZCFPb+no6Km\nATV1cgBA/16u6j2OO4rL5eClGWH4YO917Pg1GasXDIG7u0OHnlO1Uc7Msb2w9/cM/HmnGEP70gQ1\nQkjnsuo7gTnjA9ULv0kcRW02nHdxEKkvnA+La9UFAAAOnL2rczSRsVrPIcgr7tiWl/UNjVnH9PeG\nxFGM41cemCImIYQYxarvBIYGuWNwoJvOc/g8ze/2G+RKHDibaZImIRXVHIJ/fpuId/8Tj7cWDoGD\nbfv6HOqlCnAA2Ih4eGyYP344mYHMhxUI9HEyWV5CCNHHqu8EDCHgaf8WtO0h0BFerrZ4Y+5AFJXX\ndWgOQX2DAiIhDxwOB2MHesNGxMfxK9kmTksIIbqxvgjwdBQBbXsIdFSQnzPeXBiOzNwKfNmOOQQP\nCqpwKSkPYmHjGkY2Ij7GD/bB1bRCFJXX6Xk0IYSYDuuLgLbmICGfi9lRgWZ73TGDfPBkdB8kphXh\nRyP3IXj36wTU1MsxMFCiPjYx3A9cDgcnEulugBDSebpAEXj0LTg2zQnQ1IlsDpOH+WNiuB+OX8nG\n7+24eDvZPbpTcXUUY3iIB87fyENNvcyUMQkhRCur7hg2RPM7gdULhsDHza7TXpvD4WDBxCCUVtZj\n7+8ZkDiKMUTPMM+0B2Xqj3mt7mJihgcgPrkAZ/98iCdG9jBLZkIIaY71dwLNVwTtzAKgoppD0NPb\nETt+TUbmQ937EPw3Ll39cesLfYCnA0J6uOD3xGzIFR3fV5kQQvRhfRHgtt442AJEAh6Wzx0IJ3sh\n/u+nmyjUsQ9B87h8DZ3aMcMDUF7dgCu3C8wRlRBCWtBbBDZv3ozo6GgEBwcjPT1d73EAkEqleOed\ndzB58mRMnz4d69atM33yVgb0lug/yYwc7YT425ODoVQyOvch8HBp3NZyTlRvjV8f0NsVPm52OH4l\nG4yJVy4lhJDW9BaBiRMnYs+ePfD19TXoOAB88MEHEIlEOH78OA4dOoTly5ebLrEGn64Yi9fnDDDr\naxhCNYegRMc+BJ6uNgDaNgWpcDgcTB7mj+zCaty+X6bxHEIIMRW9HcMRERFGHa+pqUFsbCzOnj2r\nXrvHzU33rN+OsjNiwxhzC/JzxovTQ7E9NglfHk7BK7P6t9g4Ri5nIG6aJKbNqDBP/HAyA5/8dBMy\nuRISRxFmRwWafbQTIaT7MXmfQHZ2NpydnfHZZ59h9uzZePrpp5GYmGjql7Fqw/p54MkJmucQyBVK\njX0BzSWmFUEmV6r3SNC3oQ4hhLSXyYeIKhQKZGdnIzQ0FG+99RZu3LiBV155BSdOnIC9vb1RzyWR\nGHd+Z9O1kuiiqaGobVDg8MUs9PR1xrTIxj4AvoAHkZCn87GxF+KhaLW0dINcidgLWZgxPsgsea0R\n5TU/tmWmvKZn8iLg7e0NPp+PadOmAQAGDRoEFxcXZGVlYcAA49rtS0qqrXadfXd3BxQVVek8Z9aY\nnsgpqMLO2FsQcoAhfd1RXSMFlwOdjy0q07x0RFFZnd7X7Ehea0J5zY9tmSmvflwux+g3zyZvDnJ1\ndcWIESNw8eJFAEBWVhZKSkrQo0f3m/zE5XLw8sww9PRqnENw92ElZApGb3OQtjWPzLUWEiGk++Iw\nesYhbty4EXFxcSguLoaLiwucnZ1x5MgRrceBxn6Bt99+G+Xl5eDz+VixYgWioqKMDsf2OwGVypoG\nbPw2EVW1DZArGCiUjM7O3vjkfOw+moqGZvsmC/ncDi2FQe+izItteQH2Zaa8+rXnTkBvEbCkrlIE\nAODo5fv48XRmi2O6Luzxyfn49lgapDKFSUYH0X8g82JbXoB9mSmvflbRHEQ0O3U1p80x1cY3mowK\n80LUYB+IhTx8sGwMDQ8lhJgFFYFOom2DG10b3wj4XPUwUUIIMQcqAp2kPZ29Ah4XCiVjtU1ihBD2\noyLQSWZHBULIb/nj1rfxjaDpfBmtKEoIMRMqAp1kVJgXFj/eT/3O35CNb/hNRSDuygNI27mXMSGE\n6ML6TWXYZFSYl1EdvKo7h4Pns1BWJcUzU/rpPP/CzTx4u9nC1UEMkYAHWzH9egkhutFVwooJmjUf\nGbIB/Ve/3VZ/7OIgwr9fHWOWXISQroOag6yYas9kALAxcqXUsiopLThHCNGLioAV6+nlqP7YTk/T\njqYLvqlXHl3/TQLWf5NgsucjhFgeFQEr1vzCbyvSXQQ0TTrTNRmtPe7nV+F+PntmbBJC9KMiYMWa\nbzxTUlmP7MJqree2ZzIaIYRQEbByNk13AFduF+Kdr65oPU9bcxGtPEoI0YWKgJXb+MIIg85zcxK3\nOaZvMhohhFARsHIuDqIW+w/kFGluEhrZav4Bn8fp0NLThJDugYoAC/C4j/oGNn6biD80jPhRNlsR\nvK+/M3zd7c1WAKx49XFCiJGoCLCAqgj4uNmhp6cDdh5KwZ4T6ZA3W1NIrmi8MO9cNR52Yr5ZF507\nfiXbbM9NCOlcVARYoFYqBwC42AuxcsEQTB7mj5NXc7D5+2sorawHACiaCgKPywGPy2mzUb0p/Xjm\nDpLvlZrt+QkhnYeKAIuUVknB53Hx1MQgvDIzDDmFNVj/TQJ+PpuJEwmN785Xb7+E0qp6sxYBb4kd\nvohNMmgpC0KIdaMiwCJ5JbXqj4eHeGLd4ghwOcCR+Puoa2hcZbSkUop7eVUoq6zTuyFNZW0D9p+6\n06JZyRCvzx4AJQN8fuAWrW5KCMtREWABbXMAfNzswOW2/RUqGaBBzuDK7QKdz7vtYBKOXXmAxLRC\nvRmadwZ7utri5RmhyC6sxu6jqdRRTAiLURGwcvHJ+S3eqbdeC6isSvuM4ONXsnVeoNOzywEAtfVy\nvTkqaxpafD4w0A2zxvXGHykFiEugjmJC2IqKgBWLT87H7qOpkMoeFYHWi8JpmxFsJ+Yjp6gat++X\n6X0dQ/YxLm0qNstm9VcfmzqqB4b2dcf+03dwmzqKCWElKgJW7MDZTDS0ukC3XhRO27aV86P7wNFW\nYNC79H2n7ug9RzUKyd3ZRn2My+Hg+akh8HK1xfZfklFc0fU7is9cz1V3whPSFVARsGKGLAqnbdvK\nyIE+mDDUDzczS5BXUqP3tWRy3R281XUyAICDbct9DWxEfLw+ZyAUSgafdfGOYiXD4Nvjadh7MsPS\nUQgxGSoCVkxbU0/r46PCvPDBsjH4ak00Plg2Rj1TeMIQX/B5XIPeuW75/joqqrX3L9Q3jT4SC9t2\nUnu52uKl6aHILqjG7mNds6M4Pjkfb352Uf35iUS6GyBdAxUBK6atqcfQReEc7YQY3d8TF5Py21zg\nla0u1NlF1diwO1HrfgGqJiORUPOfzKA+bpg5thf+SC7AicQcg/KxhapvpqJZ5/je3zNo5zbSJVAR\nsGLamnqMWRPosQh/yORKHPvjXovjCkXLIvD2onBwOMD7311FQqr2IaM8DUNSVaaN7okhQW7Yf+qO\nQR3SbKGpb0Z1nBC2oyJg5bQ19RjK190e/Xu54siFrBajgFpPEAvwdMC6xcMQ4OmA7bFJiD1/F0qG\ngZJhdA5DbY7L4eCFaaHwdLXB9tikLtNR3J4Ne5RKw39uhFiSQUVg8+bNiI6ORnBwMNLT0/Ueb+6z\nzz7T+XVifpOH+6OsStpi8pimZSWc7IRYtWAIIgd449eL97BxdyJe//gc3vz8YptztbER8fHa7AFQ\nKJX4/EASGrpAR7GhfTPN/XIhC29+fpEKAbF6BhWBiRMnYs+ePfD19TXouEpycjL+/PNPrV8nnSOs\npysCvBxaTB5rfifgaCdUfyzgc7HkiX4YGeqBe/lVqJO2vIgb0g7uLbHDi9PCcL+gCruPpbG+o1hT\n34zquDZpDxqbw/JLa7WeQ4g1MKgIREREwNvb2+DjANDQ0IANGzbg3Xff7VBA0nEcDgczxwUip6ga\nqU1t9ao+gb5+Tlj3TESb8zNyKjQ+l6Ht4IOD3DAzshfik/Px+1V2dxSr+mZURAIeAGBkqKfWx9jb\nNhbWe3mV5g1nYvHJ+Vi17SKe23QKq7ZdpM7vbsBsfQKffPIJZsyYAT8/P3O9BDHC+KF+cLAV4HjT\ncFG5svFOIGqwLyQatqbU1Q5u6IVh+pieGNzHDftO3lEXH7Zq3hczbXQPAG37VZqzt2kcSvvjmUzc\nydVcUK2NahSU6ndfUiltM0OddD2aVybroOvXryMpKQkrV67s0PNIJPYmSmQe7u4Olo5glOmRvfF9\nXBrqlYCjY+PMXxdnW43fh7uLDYrKNHfsfnssDY4OYowP99f7mv+zZDj+/vE57DiUjK0rouDhYmtw\nXmv8+fYNcIarc+P3oODy4NMsY/O8jvaPCmtxVQNGWeH3ArTMHHshXuMM9dgLWZgxPqizo2lkjX8T\nurAhr1mKQEJCAjIzMzFx4kQAQH5+Pp5//nm8//77iIyMNPh5SkqqzbpDVke4uzugqEjzmHpr5O7u\ngOHB7th/MgP741IxfkhjP01NjVTj9zErshd2H03VODRSKlPgm8PJCAtwNui1l80Kw3u7E7Hhyz/w\nP38dCmFTc4q+vNb28+XzuAj0cUR2UxPPiq1n8MXK8QDa5pU36xDfc+w2RvZz79SshmidWVvRLyqr\ns4rfhTX+TehiibxcLsfoN89maQ566aWXcOHCBZw6dQqnTp2Cl5cXdu3aZVQBIKbnaCfEqDBPXErK\nR3l148QnPo+j8dzW7eCt6Roe2Zq3xA4vTg/F/fwq/Pc4OzuKGYaBQqEEn8uFUND436ZBrkSdVPMK\nrPxmHck1BqzSag3EQs3FWdcoKMJ+BhWBjRs3Yty4ccjPz8eSJUswdepUnceJ9Zo8zB8NciVONnXW\n8nna/wRGhXnB0U6g8WvGXhiGBLljxpieuJiUj1PXco16rDVQMgwYNBZNUbM7mUtJmtvL+VzNxdVa\n1dbL1UuDNGfMDHXCTgY1B61duxZr1641+Hhrp06dMj4ZMQtfd3uE9XTBrbslALTfCahED/FD7IWs\nFsfae2GYEdkLDwqq8cPJDPi52yE4wMXo57AUedNoKj6Pi4GBEvx4pnGU1O+J2ZgwtO0Q6NbLcli7\nqrpHS2II+FzI5Eo42wsxb0IfoycoEnahGcPdkL/no84qXctAAI1rAjXXnqUrVFQzit2cbbAtNkm9\nPDUbKJpGAvF4XPi62+OrNdF4aUYoCsrqkHS37V4Kqq6sSeF+4HKs/66gpu5Rk9U/XxwBGxEP7s42\nGBGifRgs6RqoCHRDzZszeHruBJp/fdms/u1auqI5WzEfr88eAJlcic8P3tK7hHV71dbLcPDcXaP3\nT9bmj5TG2dY/nMxQj5+PCPaAk70Qv19tu6KoXK4En8eFjYjPij6Q2nqZ+mM3JxssnNQXGTkVOHbl\ngQVTkc5gltFBxLo1LwK6+gRaf51nonZuHzc7vDAtFJ8duIVvj6fhuSdCwDHxu+UN3ySisLwOYhEP\nj4/oofW8+OR8HDibiZJKKSSOIsyOCmxT5OKT81tsvKMaPw8A0UN8cfB8FrILqiBu9qMsraqHq6MI\nXC4HDBo7lk39PZpSdVMRGBnW+M5/dH8v/HmnGAfP3UX/Xq4I8LT+oY6kfehOoBsSCQy/sDf/OteE\nnZ1D+7pj+uieuHjLPB3FXpLGsfxX04q0nmPo5KgDZzPbbMGp2uEtarAv+DwOjlxs2W/SIFNCJOBB\ndd239psBVXPQU9GN8wE4HA6eiQmGnY0A/zmc0uKOrbZejqSsEovkJKZHRaAbaj5O385G8+gfleZF\nwFR3Aiozx/bCoEAJfjiZod703hSUSgY3MxsvUncfal+2wZDtOxmG0Tl72tFOiBEhnjiZ8AC1zYaC\nKpQMeFyO+t2/tXcUq5qDbMWPGgccbIV47ol+yC2qwcFzj4rczkPJ2LrvBsp1bEJE2IOKQDfUfOOY\n93Yn6FwWgNesOYhj4iLA5XDw4vRQuDmJse3gLZN1FB+Jv9fic23fn74loksr6/HRjze0vo5qmOyk\nCH/UNyhw4eZD9evdvl+Ge/lVOPrHfQDA/+yIR0JqodVOfqypl0Mk5LVpHhwY6Ibxg31w/MoD9aJ4\nD4tr1I8h7EdFoJuJT87HmT8fNb+U6lkfpvm7f3OMfbcVC/DanIGQypX4/GBShzuK45PzcejSvRbH\ntH1/upaIPnfjIdbtuoz07HKM7u+lc4e3Hl4OCO3lipPXcnApKQ+7j6aqO6RVY+9LKqXYHpuEdbsu\n41JSHhRK03RYm4JSyeBObgWcmq0m29yT0X3g7mKDLw+noLZejuKKxmLdFZYJJ1QEup0DZzPVY95V\nWjeBNNd8HoG+4aTt5etmhxemhiIrrxL/jUvv0GgaY76/2VGBELS6uPN5HNgI+fjmaCoCPByw4fkR\neGFaqN4d3qaP7Y2i8nrsO3lH41IbQj4Xr8wMA4/LwZeHb+PtnX/g7J+5bfoaLOHo5fu4+7ASM8b0\n1Ph1sZCPF6eForRKir2/P9oX5GFxDfb+noHqOpnGxxF2oNFB3Yyxu2Q1v/DrG07aEeHB7pg2uicO\nX7qHXl4OeDLGsV3PY8z3NyrMC9W1Muw9maE+JlcwKKyow18f64sJQ33VY/xHhXnpHBo7qr83XBxE\nWjeRaZArMTzEExH9PHAjoxiHLt3D7mNp+PXiPTw+IgDjBvkYtKaSqd3Pr0Ls+SxE9PPQ+f0F+jph\n6qjG34/KriO3AQAyuQLPTNG+xAixbnQn0M0Yu0sWj2e+juHWZkX2wsBACb7/PQPJd9s3+sTY769/\nb9c2xzY8PwITjZzkxeNxEa1h5rCKa9PrczkcDOnrjnWLI/D3JwfBzUmM73/PwOov4nHs8gPUN3Re\nO7tUpsDOQ8lwsBXgmZhgvUNYPV1soOmMB4XsWdSNtEVFoJvRtEuWrmUgml8IzV0EuFwOXpoeComT\nGJu+TWjX1oyzowLbLIUh0PH9FZU3tm8vnzsQA3pL8O9Xx8DD2cb48Gjcm4HLAVr/mIR8Lua0en0O\nh4P+vSX4n0XheGvhEPi522H/6TtYte0SDl3MajF5y1x2H0lBXkktnp8aCns9o8QAIPb8XWhqqMsp\nrDF9ONJpqAh0M6rVQXW1b2vD0zOxzBRsxQK8PnsApA3yphnFxrWZa2q2mT6qh9bvT7UKqIeLDf72\n5CC4OLR/xUx7GwEiB3q3uFAa8vMNDnDByqeG4H+fDkcfXyccPJ+FVdsv4cC5TFTVNmh9nD75pbU4\nfOmexj6WpKwSHDp/F5PC/RDWq+3dkCbamtoa5EpWzIommlGfQDekr31bG3PfCaj4uttjxVND8f7u\nBOw5kYbFU/oZNdvWz6NxPfXnngjBV7/dRlhvidZzM5t2/dI3c9pQE8P9ce5GHgBg3oRAnbOVWwv0\ndcLyeYNwP78KR+Lv4cil+4hLyMaEIb6IGR4AZ3vjCtQnP91EQWktDpy7i6/WRKuPV9fJsOvIbfh7\nOmDueMMXApQ4irQWguR7pejfS/vPmVgvKgLEYJ1VBABg9EAfTB3VA0fi76svqgAQ0sMZqxYM1flY\n1dBF1fr4uiZqqfY/bj1KqL38PezRL8AZqQ/K2z2aqoeXA5b9ZQByi2vwW/w9xCVk4+TVXIwb5I3H\nR/TQuB2oJnINw20ZhsG3x1JRXSvD+hdHGdUZPTsqsM1GQwIeFzweB78n5lARYClqDiIG6+y1b+5q\n2Jv39v1yfLD3ms7HSWVKcACImoqApnXyWzPVnQDQOHkM6HjR9HWzw4vTw/Cvl0ZidH9PnP3zIdbs\niMfXv91GQVmt3sdrmpd2KSkfiWlFmDW2FwL9DNsZTkVTU+KzT/RDzPAA3MwsQV4J9Q2wEd0JEIN1\ndrvv7Qeal5K4fV/3EhOqYYy9vB1hJ+bj1wtZCOnhonO0j8CERWBwHzfMieqNIUFu+k82gKeLLZ59\nPATTR/fCscsPcPbGQ1y4lYcRoZ6YOqonfN3sND6u+ezkr47cxowxPbHnRDr6+jkZ1UzVnKamxIqa\nBhyJv4eTV3OwaHJwu56XWA7dCRCDOdlrnlFqrextBHgyug8ycipw/sZDnefy+aa7y+FyOZg6qidc\nHQ1rtjGUxEmMv07uiy1LRyFmWACupxfjH19exucHb7VYCkQlyM9J/fGFW3n48nAKAOCFaaEmXQzQ\nqWn9pIu38jtlVBMxLboTIHo9PjIAjrZCs80YNjUuh4NBfRrbpyMHeCM+KR/7T2dicB83OLXqXPX3\nsEeDTMGa7w0AnO1FeDK6Dx4fGYATiTk4eTUbV9OKMDBQgumjeyLQ1wkf7L3W5o4pPacCz08NgVs7\nh8DqMinCHxeT8nHuRh6mjAgw+fMT82HPXz6xmHnj+yBmeOf/xw7pobnNWttxFYGAC/emCx2Hw8Ez\nU/pBJle2mBmsIlco4d80mohtHGyFmD2uNz5YOhp/GdsLmbkV+Od/r+LVrWc0NpmJBVyM7m+erSJ7\neDmgr78zTl7Nsap1kYh+VASI1Vq1YGibC74ho4OUTcs4q3i52mLa6B64crsQNzOLW5wrkytNNjLI\nUmzFAkwf0wsfLBuNJyf0QV2D5otwvUxp1s79xyL8UVJZj+vpxfpPJlaD3X/9pMtbtWAo3nl2GIDG\nIZ/6CoBcoYRMrmwzyeyJkT3g42aH/x5P17A0g/Xu+GUMsZBv0aaYIUFucHMS4/fEttttEutFRYBY\nPVUnpiFDPbWtdc/ncfFMTDBKKusRez5L00NJB3G5HEwM90N6ToXGjmpinagIEKtnzEgW1cSwYf08\n2nytr78zxg/2wYnE7C59kdL4JB8KAAAgAElEQVTWZ2IvNv8qpWMHekMk4OEE3Q2wBhUBYvWMGc2o\naNpLQNuy13PHB8LRVohvjqaqOzCteP/3dtHUl+LnZoutr481+2vbigWIHOCNyykFqKDtJ1mBhogS\nq2fozNv45HzsaxoB9OXhFDw1MajNxCZbsQALH+uL7bFJOJmYY/Ks1kJf34k5TYzww8lrOTh9PRez\nxvY26DHxyfk4cDYTJZVSSBxFmB0V2K71rYjx6E6AWD1DmoPik/Ox+2gqKmsbJytV1cq0bisZEeyO\ngYESHDh/FyUVptnXmDzi5WqLgYESnLlu2M5pqt+danG6Ej1bnhLToiJArF7ziVxfHk7B5wdvtTnn\nwNnMNts6attWksPhYNHkvlAoGDBoXE9n1baLdNExocci/FFZK8OV2wV6zzXmd0dMj5qDCKtcStJ8\noTZ228yMnIo25+0+mgoA1AxhAqE9XeDjZocTCdkY3d9L5/wEXb+7+OR8q/x9dKXmK4PuBDZv3ozo\n6GgEBwcjPT1d7/GysjK8+OKLiImJwfTp0/Haa6+htLTU9OlJt2Bvo/29ilLJ4NjlB1q/rm1byQNn\nM6FQGrYhPTEeh8PBpAg/PCisRnq27gX/HG2172pmjc1CXa35yqAiMHHiROzZswe+vr4GHedwOHjh\nhRdw/PhxHDp0CP7+/vjwww9Nl5p0KwI+D0/HtF2dsri8Dlv2Xsf+03fQw9O+zcxfXdtmGnvnQIw3\nKswLdmI+Tl3L1XpOaWU9pDKF1ul61lCYlUoGZVVSZOVV4np6Eb4/kd6lmq8Mag6KiIgw6rizszNG\njBih/nzw4MHYu3dvO+IR0sjZruUKpudvPMT3JzPAQeMOYmMGeOGPlAKDb9G17ZKl7c6BGE8k4KGn\ntyNKKjV3vsvkSmyLTQKHw8HcCYH48bTmi6i5CjPDMKiVylFWJUV5tRTlVQ0oq1Z93PhvWZUUFTUN\nMGQVdba+gTB7n4BSqcTevXsRHR2t/2RCtPCS2Lb4/OujqegX4IznpobAzalxsThjts3UtEuWrjsH\n0j5cDqfFvgbN/XAyA3cfVmLZrP6I6OeB41eyUVnTdk/l9hTmBpmi8WJe3aC+yD+62DceL6+WtnlH\nDwB2Yj6cHURwsRfB182+6WMhnB1EcLYX4bMDt1BW1XXeQJi9CLz33nuwtbXFokWLjH6sRGLdqzu6\nuztYOoJR2JzXzqHl2vyLpvTDvIl9270u/ozxDnB0EGPXoWSUV0nh7mKDZx4Pwfhwf5PkZQtzZxaL\n+aiRytu8zqnEbJy+nou/jO+Dx8c2Ft4nH+uLL2OTWpwnEvDw7LQw9eNdJfYor6pHSUU9Siub/1uH\n0mbHquva7msgFPAgcRLD1VGMfr3s4eoohsTJBhJHMVydxOqv6dty8zmZEp/9eANS2aNlTFrnVGHD\n34RZi8DmzZtx//59fPHFF+C2Y732kpJqre8iLM3d3QFFRexZeoDteVv/HfTv6YKSkuoOvUZYgDO2\nvjqmxbH2/ozY9vMFOiezXKZAQ4O8xetkF1bj8x//RLC/M54Y7qf+2tDeri0ey+EAvX0ccCrhAX4+\nlYHKWhnKqurbNM1wORw42QvhbC+Cq4MIgT6OcLYXwaXpnbvqnbyNiK97FVWlEhXl+rftDAtwxjNT\ngvHTmUyUVUlhJ+Zj4WN9ERbg3OL7tMTfBJfLMfrNs9mKwNatW5GUlISdO3dCKGTXjlTE+rR+x8/v\nxE3vSfuVVUmRU1SD5zadgsRRhGmje+LoHw9gI+bjlZlhLeaANH8HPiTIDdczipFdWAPnpqaYoAAX\niPlcdVONs4MQLvYiONgKTbpTmiFGhXlhcB83vPrROUwd1ZO1w0MBA4vAxo0bERcXh+LiYixZsgTO\nzs44cuSI1uMZGRnYsWMHevbsiaeeegoA4Ofnh88//9ys3wzpPvgs3wOgO4hPzsf9gkfvhEsqpfj2\neBrAAGsWDW2zy1vzPaCfnxoKAZ/bYsSXtd1tiYSNRavt0uTsYlARWLt2LdauXWvw8aCgIKSlpXU8\nHSFa8Fm0HWR3deBsZpumG4YBbMV8BPnp3h3ORsQz6wY4psDlcMDncTR2ErMJ/U8irCQU0J+utdM2\nZLK2Xv87Z2svACpyBYPzN/NQoWFUE1vQ/yTCGmMGeGFgoAQ7V40Hn0d/utZO25BJtg6l1GX19kuW\njtButHYQYY3np4ZaOgIxwuyoQPznUIrG49o8NTFI5zIS1komV0KuULLyzQn7EhNCWGFUmJfGzX10\njaSZPMwfI1k60qaqtu3cBDagIkAIMRvVTm8iPROw2OqTNyLxVHQfAIBMrn8PbGtERYAQYnaqoZ4z\nI3tZOIlpOdgK4eLYOJtd0xIUbEBFgBBiNiufGgwA6mUcDN0qlE0ETf0AbN2ljooAIcRsQnu6Ysnj\n/dSfG7LdJNswTZMh4hKyLZykfagIEELMyt/z0Vo29Q3sbDfXZUCgBAAQ6Oto4STtQ0WAEGJWYuGj\nkehsX2JBEz6vcXkLucI6F7vUh4oAIcSsJI6PlgFvvvxyVyLkc9HA0u+NigAhxKwEfC6eadoe1Nm+\n680WBhoXk2NrgaMZw4QQs4sa7AMul4ORoZ6WjmIWQj4PDTJ2dnpTESCEmB2Hw8G4QT6WjmE2QgE1\nBxFCSLclEvBoshghhHRXQgF7+wSoCBBCSAfR6CBCCOnGREL2dgxTESCEkA4S8tnbHESjgwghpIOE\nAi4aTLSUdHxyPg6czURJpRQSRxFmRwXq3IOho6gIEEJIB4kEpmkOik/Ox+6jqeqRRiWVUuw+mgpA\n92Y8HUHNQYQQ0kFCAQ8KJQO5omOF4MDZzDZDTRvkShw4m9mh59WFigAhhHSQWNi4c1p2YXWHnqek\nUmrUcVOgIkAIIR00PMQTLg4ifHbgFsqq2n/BljhqXltJ23FToCJACCEd5GQnxPK5A1ErleOTn260\ne8nsPr5ObY4J+VzMjgrsaEStqAgQQogJBHg6YOnMMGQXVmPnrylQKI3bX+D2/TJcSS1ELy8H9Tac\nEkcRFj/ez6yjg6gIEEKIiQwMdMPCSX3x551ifHM42eDHlVVJseOXJHi52mLlgiHo5e2IkB4u+GDZ\nGLMWAICGiBJCiElNDPdDfmktYs9mwkHMx4QhvjrPlyuU2BZ7C1K5Eqv/MgA2Ij7EQh5q6mWdklfv\nncDmzZsRHR2N4OBgpKen6z0OAFlZWZg/fz5iYmIwf/583Lt3z+TBCSHEWj01sQ8iQjyxJy4dSXdL\nAABZeZXILWo7emjfyTvIzK3Ec0+EwMfNDgAgFvE7bT9mvUVg4sSJ2LNnD3x9fQ06DgDvvPMOFi5c\niOPHj2PhwoX4xz/+YbrEhBBi5XhcLlYtCoePmx22/5KEnKJqvLc7Eet2XUHS3RJ8fvAWgMbJYSev\n5WDyMH8M6+ehfrxYyENeSS1OJGSbPaveIhAREQFvb2+Dj5eUlCAlJQXTpk0DAEybNg0pKSkoLS01\nQVxCCGEHW7EAK+YNhJDPwyc/3lQf37r/Bq6mFeF+fhV2H01FX39nzB3fcvRPedMw070nM/DcplN4\n45NziE/ON0tOk3cM5+XlwdPTEzxe4+QJHo8HDw8P5OXlmfqlCCHEqrk6ivHG3IGoqm1o87X13ySA\nx+Ng6cww8HmPLsXxyflIzmr5prm6To6vf7ttlkJg1R3DEom9pSPo5O7uYOkIRqG85sW2vAD7MrMx\nr7u7A54pr8eXvyS1+bpcwSCntA59ermpj8VeiIemwaVyBYPYC1mYMT7IpBlNXgS8vb1RUFAAhUIB\nHo8HhUKBwsJCjU1H+pSUVENp5FjbzuLu7oCioipLxzAY5TUvtuUF2JeZzXkFHM3nyORKfHM4GWEB\nzupjRWV1Wp+zqKxO58+Ay+UY/ebZ5M1BEokEISEhOHz4MADg8OHDCAkJgaurq6lfihBCWIHL0VIF\n0HZdIF1LRJhj+Qi9RWDjxo0YN24c8vPzsWTJEkydOlXncQB499138d133yEmJgbfffcd1q9fb/Lg\nhBDCFgyjvUXD3qZlg8zsqEBoqhk8Lscsy0dwGF3pLIyag0yH8poX2/IC7MvM5rxXbhfgi180zyC2\nE/Pw6YqoFscuJeXhv8fTIG22R8GEoT54enI/na9pFc1BhBBCWlLqeK9dU992Utjo/t7Y/uZ49ecS\nRxGKyuvNEY2KACGEmJuTXcfa+UeGeSE5qxQV1abfV4CKACGEmFlIDxf4SGzbHDd0mehRYV5gGOBy\nSoHJs1ERIISQTjCi1WqghiwTLRLyMDzEAz5udujp5YBL3W2yGCGEdEViIQ8fLBuj97ztf3/UYTyq\nvxf2/p6B3KJq+LqbbiIt3QkQQkhnaOocHhLkhk2vjDL64SNCPMHlcEx+N0BFgBBCOoFqfJCPmx0c\nbYVGP97RToj+vV3xR3KBztFGxqIiQAghnYDTNAOsIxfw0f29UFYlRdr9MlPFoiJACCGdYWSoJ4R8\nLiIHGL+OmsrgPm6wEfFM2iRERYAQQjqBu7MNvlg5Ht4Su3Y/h1DAQ0SwBxLTiiCVmWbnMSoChBDC\nIqP7e0HaoMD19CKTPB8VAUIIYZEgf2dIHEXqJqGi8jr867urqK5r38b0VAQIIYRFuBxOi2UkDl26\nhzs5FbiaVti+5zNxPkIIIWY2uv+jZSTkisaVRs/dyGvXqstUBAghhGW8JY+WkbATCQAAWXmVuP3A\n+KGjVAQIIYSFRvf3woOCahRVPNqOcvfRVKOfh4oAIYSw0PBQT/C4HNzMLOnQ81ARIIQQFnK0FSKs\nV8f3bqciQAghLCVxFHf4OagIEEIIS0WH+3X4OagIEEIISwl4nA4/BxUBQghhqQa5ssPPQUWAEEJY\nSshvvIT370AHMRUBQghhKQ8XWyyd1R8vzwxr93PQHsOEEMJiw/p5AAD+/eoYJN8rNfrxdCdACCFd\ngIuDCOMG+Rj9OCoChBDSjVERIISQbkxvEdi8eTOio6MRHByM9PR09fGsrCzMnz8fMTExmD9/Pu7d\nu6f+2unTpzFr1izMnDkTM2bMQFxcnFnCE0II6Ri9RWDixInYs2cPfH19Wxx/5513sHDhQhw/fhwL\nFy7EP/7xDwAAwzBYvXo1tmzZgl9++QVbtmzBW2+9BaWy4+NZCSGEmJbeIhAREQFvb+8Wx0pKSpCS\nkoJp06YBAKZNm4aUlBSUljb2THO5XFRVVQEAqqqq4OHhAS6XWp4IIcTatGuIaF5eHjw9PcHj8QAA\nPB4PHh4eyMvLg6urKz7++GMsW7YMtra2qKmpwc6dO00amhBCiGmYfJ6AXC7Hjh07sG3bNoSHh+Pq\n1atYsWIFjhw5Ajs7O6OeSyKxN3U8k3J3d7B0BKNQXvNiW16AfZkpr+m1q43G29sbBQUFUCgUAACF\nQoHCwkJ4e3vj9u3bKCwsRHh4OAAgPDwcNjY2yMzMNF1qQgghJtGuIiCRSBASEoLDhw8DAA4fPoyQ\nkBC4urrCy8sL+fn5uHv3LgAgMzMTJSUlCAgIMF1qQgghJsFhGEbn9vQbN25EXFwciouL4eLiAmdn\nZxw5cgSZmZlYs2YNKisr4ejoiM2bN6N3794AgF9//RX/+c9/wOE0LnP6xhtvYNKkSeb/bgghhBhF\nbxEghBDSddG4TUII6caoCBBCSDdGRYAQQroxKgKEENKNUREghJBujIpAF8HGQV5szEzMi21/E2zL\nqwkVAS0KCgosHcEocrlc/TFb/jAbGhrUH7Mh89GjR3Hz5k1LxzAK21bvraioAMCOv4eugopAK4mJ\niXjyySfx1VdfWTqKQS5duoRXXnkFmzZtwpkzZwBAPUnPWiUkJODFF1/EP//5T+zfvx+AdWdOTEzE\n008/jdWrV7Ni+ZMrV67g559/BmDdP9fmEhMTMX/+fHz99dcArD/3xYsXsXz5cnz88cdITU21dJwO\noY3mm9TX12PFihUoLy/HCy+8gMmTJ6u/xjCMVf5RHj16FF9++SWWLl2KgoIC7N27F6mpqXjllVeg\nVCqtbvnu+vp6/O///i9yc3Px7LPPorq6GocPH0ZwcDAGDRpk6XhtVFZWYv369cjNzcWrr76KH3/8\nUf1O1Rp/vg0NDdi4cSOOHTsGe3t7hIWFoV+/flAoFOoVf61NTU0NVq9ejZKSEjz33HOIiYmxdCS9\nvv/+exw4cACvvPIKrl69iu3btyMyMhLz5s2zyr8LfdiV1oy4XC5ycnIQGRmJyZMnQyaT4c6dO1Zb\nAADg2rVriImJwaRJkzB79mz4+/tj586dyM/PB5fLtbpbaj6fj6ioKHz33XeYMmUKIiIi4OzsjMDA\nQPU51pQ5MzMTI0aMwN69ezF27FgMHz4c58+fBwCr/I+uVCoRFBSEXbt2Yd68efjiiy8AwGoLAAAU\nFxfjwYMHmDFjBmJiYiCXy5Gfn2/pWDqlpqZiwYIFmDRpEl588UUAwLfffovi4mKr/H+nD+/dd999\n19IhLOXs2bMoLi6Gs7MzxGIxevXqhU8++QR8Ph+bN2/GtWvXcOrUKfB4vBYXKmvIKxAIkJycjKKi\nIowcORJisRg3btxAWVkZUlJSEBMTYxXFq7S0FDY2NpDJZBAIBAgODgaXy8XRo0fxxhtvgMPhID09\nHffv38fgwYMtnlmVF2hcLTcsLAwcDgcMwyA9PR2VlZWIiooCl8u1eFagsRmlrq4Orq6u4PP5CAoK\ngp+fH+zs7PDbb7/B0dERgYGBkMvlVlO4mmd2dnaGg4MDYmNjUVdXh02bNiExMRHnz5+Ht7c3PDw8\nLB23RV6pVIqLFy/CxsYGgwcPhq2tLRITE1FdXa1+E2kNfxfG6JbNQQUFBXjttdfA5/Ph5OQEFxcX\nvPzyyxg1ahQGDRqEffv2YcuWLfDz88PevXtx7NgxDBgwAF5eXlaR19nZGStWrEBUVBQ++ugj/O1v\nf4NUKoVEIsHrr7+Offv2oaysDC4uLhbJCwA3b97E2rVrIZVKcfz4cQgEghZfd3Fxweeff46hQ4fi\n8uXLWL9+PYYPH47Q0FCryAs8agZUNacEBQVh69atVnF3ePPmTfz73/+GUqmEQqFAVFQU5s+fD2dn\nZwBAYGAgpkyZgv/+97+YMGFCm5+/JWjKvHDhQkRFReHQoUP4+eefsX79eri5uWHbtm04fPgwAgIC\n4OBgmTX5W+cdN24cnn/+eYSHh+PQoUNIS0tDaWkpXF1dMXXqVNy+fRsNDQ0QCoUWydte3fJO4MyZ\nM+DxePj4448RHh6OtLQ07N27F3PmzMHo0aOxcOFCeHt7QyQSAWjsBJo6dSrEYrHF8vL5/DZ5X3rp\nJYwZMwbOzs4ICQlR9w1cu3YNc+fOtdiFqra2Fu+99x5GjRqFwsJCVFRUYOjQoVAoFOp3o35+fupt\nS+3s7PDnn39ixIgRcHNzs5q8qvZdVWYbGxskJCTA09PTokujp6WlYdOmTZg2bRrWrVsHBwcHJCQk\nICQkBBKJBEBj05uzszMSEhIgk8kQGhqKCxcuWCy3psxXrlxBaGgovL29MWjQILzwwgvw8vKCg4MD\n6uvrceHCBcyaNcsizVma8l6+fBlhYWEYMmSI+u+5f//+WLZsGe7evYsbN25g5syZnZ61w5hu6NNP\nP2WWLl3KMAzDKBQKpq6ujhk3bhzz66+/MgzDMHK5XH3uZ599xqxZs4aRyWQWycow2vPGxsYyDNMy\n74cffshs3brVIjkZhmGUSiXDMAyTmZnJKBQK5vTp08yYMWOYqqoqhmEa87e2Y8cO5qWXXmIqKys7\nNSvDGJe3uLiYWbx4MXPt2rVOz9lcfn4+k5SUpP5coVAwEyZMYG7dutXm3Li4OKZ///7MyJEjme+/\n/74zY7agLfPNmzfVnzf3ySefMJs3b+7UjM3py9va+++/z+zevbuz4pmUdTQSdrLw8HCIRCJkZmaC\ny+VCLBZj+fLl6uFpMpkMJ06cwOzZs5GRkYHly5eDz7dcy5m2vLt37wbQ2PF3/PhxTJkyBVlZWVi4\ncKHFsqruPnr37g0ul4vx48dj0KBB+Ne//gXg0bj10tJSHDt2DH/5y1+QlpaGd955xyK3/YbmZRgG\nEokENTU1Fh8S6OHhgX79+gFo/FstKSmBl5dXm+a/+Ph4rF27FhMmTMD+/fuxYMECS8QFoD2zq6sr\ngMaO9urqasTFxWHevHm4e/cunn32WavMyzR1/MpkMsTFxeHxxx9Hbm4unnjiCYvl7Ygu2yeQm5sL\nJycn2Nu33afY3d0drq6uOHHiBAIDA8EwDAYNGoTff/8d2dnZcHR0RFFREd58802MGTPGavOePHkS\nWVlZ6NWrF/r06YN169Z1Wl59mZtbvnw5Fi9erM5aXV0NFxcX1NXVYdWqVRg9erRV562oqICTkxMA\n4Kuvvuq0YqUtL4fDAY/HA8MwEAgEyM3NhZ2dHXx9fQEAdXV1sLGxgaOjI95//31ER0d3St6OZJbL\n5ZDJZEhLS8OKFSss/v9OX976+nqIxWK4uLjg7bffxtixYzslrzl0uT6B2tpafPjhh9i2bRvGjh2r\nfqcBQD1CwtXVFeXl5bh+/ToUCgX69u2LnJwcXLlyBQsWLICNjQ0GDBjQKe2nHcmbkJCABQsWqM/p\nrPZeXZmbt/sDje+k3dzcIJVKsWvXLmRkZODChQsYO3YsQkND4e/vb9V579y5g4sXLyIyMhJcLlfd\nT2QNeVV3MT/99BOCgoIwePBgbN68GXfu3MHAgQPh5eWFXr16mT1vRzNv2rQJGRkZGD16NEaMGGHx\n/3eG/owHDRoEPz8/9OjRw+x5zalLNQcdPnwY0dHRcHBwwPfff99mWKeqSefatWsYOXIkxo8fj/fe\new/vv/8+/va3v6mHKDKdNM63o3kHDRrU6eOS9WVWdeJdunQJUqlU/Z9JoVDgxo0bqK+vx+rVqzut\ns6+jeevq6rB69epOaw40NG98fDxqa2sBNI5iOXfuHObPnw+ZTIann366U5svO5pZLpdj0aJFrMmr\n+hlb8/wLY3Sp5iChUIjy8nK89tprAIDbt2/DxcUFrq6uEAqFSExMxNatW+Hq6opNmzZh+vTp6Nmz\nJ9LT0zF79mwEBwdTXhNmHjx4MADghx9+wJUrV3D48GH06dOH8poo74ABA9DQ0IC8vDx4e3tjy5Yt\nFnlXyrbMbMtrbqzeY/jBgwc4f/48xo8fDw8PDwgEAsydOxc+Pj5wcHBAVlYWbG1t4e/vj5UrV+LM\nmTOwt7dHVFQU5e3EzEwnjqvvbnnr6urw8OHDTp3MyLbMbMvb2VhbBLZv346DBw8iLCwMCoUCPj4+\nWLNmDTIyMjBz5kysWrUKS5YsQWJiIvbv34/g4GA8//zz6sd39noqbMvLxszdLa9cLu/0UWtsy8y2\nvBZhgWGpHVZXV8f8/e9/Z7KzsxmGYZg7d+4wAwYMYC5cuMAwDMPk5ua2OP+dd95h9u7dyzCM5nHq\n5sa2vAzDvsyU1/zYlplteS2FlR3Dcrkc8fHx6jX0AwMDsWzZMmzZsgUA4OPjoz43JSUFqamp6nY8\nS6yfwra8APsyU17zY1tmtuW1GEtXIV1UszmbU1XodevWtZlRGBkZyRw9epRhGIZ58OAB8/rrrzNP\nPvkkc+jQIfOHZdiXl2HYl5nymh/bMrMtr7Wx6nkCTLMOOtXHHA4HSqUSDMPg4sWL6Nmzp3qlwZqa\nGuTl5WH06NEoKCgAh8PBhg0b0LdvX8rbRTJTXsrM9rzWxiqLQGxsLN577z1kZGSgsLAQoaGh6tUc\nGYYBj8eDg4MD8vPzcejQIcyYMUP9uIiICAQFBUEikWDgwIGUt4tkpryUme15rZXVdXv/9NNPiI2N\nxfLly1FeXo5///vfYBgGc+fOVY/cSE1NRV1dHZ5++mm8+uqrePPNN5GTkwORSNTpSxGzLS8bM1Ne\nysz2vFbNzM1NRnv99dfVbXNKpZJZuXIlM3LkSKaiooKRy+XMpk2bmOjoaHUPf2VlJXPjxg3myJEj\nlLeLZqa8lJntea2ZxbvAVXu2qnrw+/TpgwsXLgBoXLcjICAAPB4P27dvh0KhQO/evXHs2DH1AlMO\nDg4YOHBgp63gx7a8bMxMeSkz2/OyicWKwOnTpxEREYHnnnsOwKN1ciZOnIiMjAz8/e9/x+zZs8Ew\nDNavX48bN25AqVRi3rx5EAgEUCgUlLeLZaa8lJnteVnJErcfRUVFzNKlS5mDBw8yI0eOZA4fPtzi\n64WFhUx8fDwTHx/PMEzjxhhr1qxhlEqlxuFglLcttmWmvObHtsxsy8tWnVYEpFJpi89TUlIYhmGY\n/fv3M6NGjVIf1/TLW7VqFfPFF1+YN2ArbMvLMOzLTHnNj22Z2Za3K+iU5qBvvvkGTz31FLZs2YLY\n2FgAUI/JnTdvHlxcXPDRRx8BgHpsLwDs27cP06ZNg1AoxOLFizsjKivzsjEz5aXMbM/bZZi7yhw8\neJBZsGAB8+effzK//vorM2bMGHWPvarqX7t2jQkNDVV/XlpayjAMwyQmJjIZGRnmjsjqvGzMTHkp\nM9vzdiVmWUW0urpavV3bW2+9hcjISEyfPh0A8N133+Hbb7/FsWPHwOVy0dDQAKFQiFWrViE/Px+u\nrq5wd3fH2rVrTR2ry+RlY2bKS5nZnrerMmlzkFwux0cffYSlS5fi448/Rnp6OgYMGIDjx4+rz1m0\naBEEAgG++uorAIBAIAAA2NjY4Pr16+jbt2+n/WLZlpeNmSkvZWZ73q7OZEXg+vXrmDNnDqqrq/Hm\nm2+CYRhs3rwZgYGBkMvluHLlivrclStX4pdffgHQOMZ3x44dkEqlOHfuHF599VVTRepSedmYmfJS\nZrbn7Q5MtmyEQCDAggUL8NRTTwFo3KDj3r17sLe3R1hYGL7//nsMHz4cACCRSDBo0CDU1NTAzs4O\nS5YsgVAoNFWULpmXjZkpL2Vme97uwGR3AsHBwZgxY4a6x97Ozg65ubno378/pk+fjvLycmzYsAHZ\n2dn48ssvweFwYGdnBzkBeacAAAWCSURBVAAW+cWyLS8bM1Neysz2vN2ByYqAQCCAra2teknXpKQk\n9OzZExwOBz179sQ///lPcDgcrFq1CgEBAXjvvfdM9dLdIi/AvsyU1/zYlpltebsDk68iqtqnNTk5\nWX1bd+zYMQQGBmLdunWoq6uDjY2NqV+23diWF2BfZsprfmzLzLa8XZnJJ4vxeDwwDIOSkhLU1dXh\nzTffxA8//AClUgkAVveLZVtegH2ZKa/5sS0z2/J2ZWbZT+Du3buIi4tDfn4+5s2bh3nz5pnjZUyG\nbXkB9mWmvObHtsxsy9tlmWMGWlVVFbNjx44264BYK7blZRj2Zaa85se2zGzL21WZZcYwIYQQdrD4\npjKEEEIsh4oAIYR0Y1QECCGkG6MiQAgh3RgVAUII6caoCBBCSDdGRYB0KWvWrFFvQWgpU6dOxeXL\nly2agRBDUREg3dLTTz+NH3/8scPPo6noHDlyBCNGjOjwcxPSGagIEEJIN0ZFgLBaSkoK/vKXv2DI\nkCFYsWIFpFIpAKCiogIvv/wyRo4ciWHDhuHll19Gfn4+AOCjjz5CYmIiNmzYgCFDhmDDhg0AgMzM\nTCxZsgTDhw9HTEwMfvvtN52vvW/fPhw6dAi7du3CkCFD8MorrwAAoqOjcenSJQDAp59+ijfeeAMr\nV67EkCFDMH36dGRlZWHHjh0YNWoUoqKicOHCBfVzVlVV4e2330ZkZCTGjh2Ljz76CAqFwuQ/N0LU\nLL1uBSHtJZVKmfHjxzNff/0109DQwBw9epQJDQ1ltm7dypSWljLHjh1jamtrmaqqKub1119nli5d\nqn7sokWLmP3796s/r6mpYcaNG8f89NNPjEwmY5KTk5nhw4czGRkZOjO89dZbzNatW1scmzBhAnPx\n4kWGYRjm//7v/5j+/fsz586dY2QyGbNq1SpmwoQJzLZt25iGhgZm3759zIQJE9SPXbZsGbNu3Tqm\npqaGKS4uZubMmcPs3bvXFD8uQjSiOwHCWjdu3IBMJsPixYshEAgwZcoUDBgwAADg4uKCmJgY2NjY\nwN7eHkuXLkVCQoLW5zpz5gx8fX0xZ84c8Pl8hIaGIiYmBseOHetwzoiICIwdOxZ8Ph9TpkxBWVkZ\nXnrpJQgEAjzxxBPIzc1FZWUliouLcfbsWbz99tuwtbWFRCLBs88+iyNHjnQ4AyHamGUpaUI6Q2Fh\nITw9PdW7VAGAj48PAKCurg7vv/8+zp8/j4qKCgBATU2NejOT1nJzc3Hz5k1ERESojykUCsyYMaPD\nOSUSifpjsVgMFxcXdQaxWAwAqK2tRWFhIeRyOSIjI9XnK5VKeHt7dzgDIdpQESCs5e7ujoKCAjAM\noy4EDx8+hL+/P7766itkZWVh//79cHd3x+3btzFr1iz13rateXt7Y9iwYfj666+NytC8AHWUl5cX\nhEIh/vjjD/D59F+TdA5qDiKsNXjwYPD5fHz77beQyWSIi4vDrVu3ADS+6xeJRHB0dER5eTk+++yz\nFo91c3NDdna2+vPx48fj3r17iI2NhUwmg0wmw82bN5GZmakzg0QiQU5Ojkm+Hw8PD4wZMwabNm1C\ndXU1lEolHjx4gCtXrpjk+QnRhIoAYS2hUIhPP/0UBw8exPDhw/Hbb7/hscceAwAsXrwYUqkUI0eO\nxPz58zF27NgWj33mmWdw/PhxDBs2DBs3boS9vT127dqF3377DWPHjkVkZCQ+/PBDNDQ06Mwwd+5c\n3LlzBxEREVi2bFmHv6ctW7ZAJpPhiSeewLBhw/DGG2+gqKiow89LiDa0qQwhhHRjdCdACCHdGPU+\nEaLH1KlT8fDhwzbH169fb5LRQ4RYEjUHEUJIN0bNQYQQ0o1RESCEkG6MigAhhHRjVAQIIaQboyJA\nCCHd2P8D5gjxodgaQVgAAAAASUVORK5CYII=\n",
            "text/plain": [
              "<Figure size 432x288 with 1 Axes>"
            ]
          },
          "metadata": {
            "tags": []
          }
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "zK1pdEnEl2K6",
        "colab_type": "text"
      },
      "source": [
        "## (c)"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "59qYXNUPlmjm",
        "colab_type": "code",
        "outputId": "2a2528a3-e1fe-4823-bfb0-6c23dfa75d20",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 1000
        }
      },
      "source": [
        "# Tripple Barrier 기법\n",
        "\n",
        "# 1. events 만들기 (ptsl=[1.1])\n",
        "\n",
        "pt_sl = [1,1]\n",
        "target = DailyVol\n",
        "\n",
        "#1.1. side를 설정안 한 경우 만들기\n",
        "\n",
        "\n",
        "events = labeling.get_events(close, t_events, pt_sl, target, min_ret=0.01, num_threads=1 ,vertical_barrier_times=vertical_barrier, side_prediction=None )\n",
        "events\n",
        "#no side"
      ],
      "execution_count": 28,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "/usr/local/lib/python3.6/dist-packages/mlfinlab/labeling/labeling.py:122: FutureWarning: \n",
            "Passing list-likes to .loc or [] with any missing label will raise\n",
            "KeyError in the future, you can use .reindex() as an alternative.\n",
            "\n",
            "See the documentation here:\n",
            "https://pandas.pydata.org/pandas-docs/stable/indexing.html#deprecate-loc-reindex-listlike\n",
            "  target = target.loc[t_events]\n"
          ],
          "name": "stderr"
        },
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>t1</th>\n",
              "      <th>trgt</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>2009-10-02 09:32:42</th>\n",
              "      <td>2009-10-02 10:36:37</td>\n",
              "      <td>0.010414</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-02 10:34:31</th>\n",
              "      <td>2009-10-05 09:35:27</td>\n",
              "      <td>0.010400</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-05 12:55:39</th>\n",
              "      <td>2009-10-06 09:31:29</td>\n",
              "      <td>0.011719</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-06 09:31:29</th>\n",
              "      <td>2009-10-07 09:47:25</td>\n",
              "      <td>0.016259</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-06 11:16:28</th>\n",
              "      <td>2009-10-07 12:14:25</td>\n",
              "      <td>0.017185</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-06 14:08:35</th>\n",
              "      <td>2009-10-07 14:12:08</td>\n",
              "      <td>0.017471</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-07 11:04:15</th>\n",
              "      <td>2009-10-08 11:29:32</td>\n",
              "      <td>0.015954</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-08 09:29:50</th>\n",
              "      <td>2009-10-09 09:41:48</td>\n",
              "      <td>0.014741</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-12 09:43:45</th>\n",
              "      <td>2009-10-13 10:02:16</td>\n",
              "      <td>0.012437</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-13 10:02:16</th>\n",
              "      <td>2009-10-14 09:34:13</td>\n",
              "      <td>0.011074</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-14 09:34:13</th>\n",
              "      <td>2009-10-15 09:59:26</td>\n",
              "      <td>0.010597</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-14 15:04:11</th>\n",
              "      <td>2009-10-15 15:18:10</td>\n",
              "      <td>0.010634</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-16 09:38:27</th>\n",
              "      <td>2009-10-19 09:35:41</td>\n",
              "      <td>0.010277</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-19 10:28:55</th>\n",
              "      <td>2009-10-20 10:36:58</td>\n",
              "      <td>0.010475</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-22 14:17:14</th>\n",
              "      <td>2009-10-23 11:22:52</td>\n",
              "      <td>0.010254</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-23 10:44:02</th>\n",
              "      <td>2009-10-23 13:40:54</td>\n",
              "      <td>0.010212</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-23 11:22:52</th>\n",
              "      <td>2009-10-26 09:42:08</td>\n",
              "      <td>0.010113</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-26 10:24:21</th>\n",
              "      <td>2009-10-26 11:30:36</td>\n",
              "      <td>0.010046</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-26 15:08:07</th>\n",
              "      <td>2009-10-27 15:34:39</td>\n",
              "      <td>0.010021</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-27 10:02:21</th>\n",
              "      <td>2009-10-28 10:03:59</td>\n",
              "      <td>0.010398</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-27 12:18:51</th>\n",
              "      <td>2009-10-28 10:00:42</td>\n",
              "      <td>0.010670</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-29 13:06:32</th>\n",
              "      <td>2009-10-30 11:55:41</td>\n",
              "      <td>0.010090</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-30 09:58:03</th>\n",
              "      <td>2009-10-30 12:35:18</td>\n",
              "      <td>0.012361</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-30 11:38:14</th>\n",
              "      <td>2009-10-30 12:49:44</td>\n",
              "      <td>0.012099</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-30 12:49:44</th>\n",
              "      <td>2009-11-02 09:29:50</td>\n",
              "      <td>0.011894</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-02 09:54:04</th>\n",
              "      <td>2009-11-02 12:59:16</td>\n",
              "      <td>0.013649</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-02 12:37:26</th>\n",
              "      <td>2009-11-03 12:43:41</td>\n",
              "      <td>0.014020</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-02 12:53:12</th>\n",
              "      <td>2009-11-03 13:32:03</td>\n",
              "      <td>0.013749</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-02 14:50:33</th>\n",
              "      <td>2009-11-03 15:16:14</td>\n",
              "      <td>0.012509</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-03 14:02:53</th>\n",
              "      <td>2009-11-04 10:00:01</td>\n",
              "      <td>0.010853</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>...</th>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 11:18:49</th>\n",
              "      <td>2018-12-26 12:05:16</td>\n",
              "      <td>0.010568</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 11:56:55</th>\n",
              "      <td>2018-12-26 13:54:04</td>\n",
              "      <td>0.011621</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 12:15:07</th>\n",
              "      <td>2018-12-26 15:33:33</td>\n",
              "      <td>0.013061</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 13:20:13</th>\n",
              "      <td>2018-12-26 15:13:34</td>\n",
              "      <td>0.013520</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 13:54:04</th>\n",
              "      <td>2018-12-26 15:44:03</td>\n",
              "      <td>0.013013</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 15:12:52</th>\n",
              "      <td>2018-12-26 15:44:03</td>\n",
              "      <td>0.010516</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 15:36:41</th>\n",
              "      <td>2018-12-27 13:45:53</td>\n",
              "      <td>0.010180</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 15:55:00</th>\n",
              "      <td>2018-12-27 09:33:37</td>\n",
              "      <td>0.011307</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-27 09:30:00</th>\n",
              "      <td>2018-12-27 13:49:26</td>\n",
              "      <td>0.011859</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-27 09:48:37</th>\n",
              "      <td>2018-12-27 15:26:31</td>\n",
              "      <td>0.010464</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-27 14:43:44</th>\n",
              "      <td>2018-12-27 15:26:02</td>\n",
              "      <td>0.010930</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-28 10:28:33</th>\n",
              "      <td>2018-12-28 14:53:25</td>\n",
              "      <td>0.011270</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-31 09:30:00</th>\n",
              "      <td>2019-01-02 09:30:00</td>\n",
              "      <td>0.013854</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-31 10:58:46</th>\n",
              "      <td>2019-01-02 09:30:00</td>\n",
              "      <td>0.011591</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-04 10:23:47</th>\n",
              "      <td>2019-01-07 09:30:00</td>\n",
              "      <td>0.014161</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-04 12:41:59</th>\n",
              "      <td>2019-01-07 09:30:00</td>\n",
              "      <td>0.010130</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-07 10:36:22</th>\n",
              "      <td>2019-01-08 09:30:00</td>\n",
              "      <td>0.013365</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-07 12:25:57</th>\n",
              "      <td>2019-01-08 12:27:42</td>\n",
              "      <td>0.011640</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-22 11:56:00</th>\n",
              "      <td>2019-01-23 12:08:47</td>\n",
              "      <td>0.013127</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-23 09:41:35</th>\n",
              "      <td>2019-01-23 12:08:47</td>\n",
              "      <td>0.011577</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-23 11:26:41</th>\n",
              "      <td>2019-01-24 11:34:47</td>\n",
              "      <td>0.011245</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-23 14:15:38</th>\n",
              "      <td>2019-01-24 14:20:49</td>\n",
              "      <td>0.010252</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-03-25 09:51:16</th>\n",
              "      <td>2019-03-26 09:59:19</td>\n",
              "      <td>0.010639</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-05-14 09:42:08</th>\n",
              "      <td>2019-05-15 09:45:03</td>\n",
              "      <td>0.011580</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-05-14 11:59:27</th>\n",
              "      <td>2019-05-15 12:05:31</td>\n",
              "      <td>0.013155</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-05-15 09:30:00</th>\n",
              "      <td>2019-05-16 09:30:00</td>\n",
              "      <td>0.014566</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-05-15 10:38:24</th>\n",
              "      <td>2019-05-16 11:01:47</td>\n",
              "      <td>0.013474</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-05-16 10:01:27</th>\n",
              "      <td>2019-05-17 10:09:42</td>\n",
              "      <td>0.011151</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-05-17 09:30:00</th>\n",
              "      <td>2019-05-17 10:57:55</td>\n",
              "      <td>0.010195</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-06-05 09:30:00</th>\n",
              "      <td>2019-06-06 09:30:07</td>\n",
              "      <td>0.012501</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "<p>1088 rows × 2 columns</p>\n",
              "</div>"
            ],
            "text/plain": [
              "                                     t1      trgt\n",
              "2009-10-02 09:32:42 2009-10-02 10:36:37  0.010414\n",
              "2009-10-02 10:34:31 2009-10-05 09:35:27  0.010400\n",
              "2009-10-05 12:55:39 2009-10-06 09:31:29  0.011719\n",
              "2009-10-06 09:31:29 2009-10-07 09:47:25  0.016259\n",
              "2009-10-06 11:16:28 2009-10-07 12:14:25  0.017185\n",
              "2009-10-06 14:08:35 2009-10-07 14:12:08  0.017471\n",
              "2009-10-07 11:04:15 2009-10-08 11:29:32  0.015954\n",
              "2009-10-08 09:29:50 2009-10-09 09:41:48  0.014741\n",
              "2009-10-12 09:43:45 2009-10-13 10:02:16  0.012437\n",
              "2009-10-13 10:02:16 2009-10-14 09:34:13  0.011074\n",
              "2009-10-14 09:34:13 2009-10-15 09:59:26  0.010597\n",
              "2009-10-14 15:04:11 2009-10-15 15:18:10  0.010634\n",
              "2009-10-16 09:38:27 2009-10-19 09:35:41  0.010277\n",
              "2009-10-19 10:28:55 2009-10-20 10:36:58  0.010475\n",
              "2009-10-22 14:17:14 2009-10-23 11:22:52  0.010254\n",
              "2009-10-23 10:44:02 2009-10-23 13:40:54  0.010212\n",
              "2009-10-23 11:22:52 2009-10-26 09:42:08  0.010113\n",
              "2009-10-26 10:24:21 2009-10-26 11:30:36  0.010046\n",
              "2009-10-26 15:08:07 2009-10-27 15:34:39  0.010021\n",
              "2009-10-27 10:02:21 2009-10-28 10:03:59  0.010398\n",
              "2009-10-27 12:18:51 2009-10-28 10:00:42  0.010670\n",
              "2009-10-29 13:06:32 2009-10-30 11:55:41  0.010090\n",
              "2009-10-30 09:58:03 2009-10-30 12:35:18  0.012361\n",
              "2009-10-30 11:38:14 2009-10-30 12:49:44  0.012099\n",
              "2009-10-30 12:49:44 2009-11-02 09:29:50  0.011894\n",
              "2009-11-02 09:54:04 2009-11-02 12:59:16  0.013649\n",
              "2009-11-02 12:37:26 2009-11-03 12:43:41  0.014020\n",
              "2009-11-02 12:53:12 2009-11-03 13:32:03  0.013749\n",
              "2009-11-02 14:50:33 2009-11-03 15:16:14  0.012509\n",
              "2009-11-03 14:02:53 2009-11-04 10:00:01  0.010853\n",
              "...                                 ...       ...\n",
              "2018-12-26 11:18:49 2018-12-26 12:05:16  0.010568\n",
              "2018-12-26 11:56:55 2018-12-26 13:54:04  0.011621\n",
              "2018-12-26 12:15:07 2018-12-26 15:33:33  0.013061\n",
              "2018-12-26 13:20:13 2018-12-26 15:13:34  0.013520\n",
              "2018-12-26 13:54:04 2018-12-26 15:44:03  0.013013\n",
              "2018-12-26 15:12:52 2018-12-26 15:44:03  0.010516\n",
              "2018-12-26 15:36:41 2018-12-27 13:45:53  0.010180\n",
              "2018-12-26 15:55:00 2018-12-27 09:33:37  0.011307\n",
              "2018-12-27 09:30:00 2018-12-27 13:49:26  0.011859\n",
              "2018-12-27 09:48:37 2018-12-27 15:26:31  0.010464\n",
              "2018-12-27 14:43:44 2018-12-27 15:26:02  0.010930\n",
              "2018-12-28 10:28:33 2018-12-28 14:53:25  0.011270\n",
              "2018-12-31 09:30:00 2019-01-02 09:30:00  0.013854\n",
              "2018-12-31 10:58:46 2019-01-02 09:30:00  0.011591\n",
              "2019-01-04 10:23:47 2019-01-07 09:30:00  0.014161\n",
              "2019-01-04 12:41:59 2019-01-07 09:30:00  0.010130\n",
              "2019-01-07 10:36:22 2019-01-08 09:30:00  0.013365\n",
              "2019-01-07 12:25:57 2019-01-08 12:27:42  0.011640\n",
              "2019-01-22 11:56:00 2019-01-23 12:08:47  0.013127\n",
              "2019-01-23 09:41:35 2019-01-23 12:08:47  0.011577\n",
              "2019-01-23 11:26:41 2019-01-24 11:34:47  0.011245\n",
              "2019-01-23 14:15:38 2019-01-24 14:20:49  0.010252\n",
              "2019-03-25 09:51:16 2019-03-26 09:59:19  0.010639\n",
              "2019-05-14 09:42:08 2019-05-15 09:45:03  0.011580\n",
              "2019-05-14 11:59:27 2019-05-15 12:05:31  0.013155\n",
              "2019-05-15 09:30:00 2019-05-16 09:30:00  0.014566\n",
              "2019-05-15 10:38:24 2019-05-16 11:01:47  0.013474\n",
              "2019-05-16 10:01:27 2019-05-17 10:09:42  0.011151\n",
              "2019-05-17 09:30:00 2019-05-17 10:57:55  0.010195\n",
              "2019-06-05 09:30:00 2019-06-06 09:30:07  0.012501\n",
              "\n",
              "[1088 rows x 2 columns]"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 28
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "7DvhM38UBxKu",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        ""
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "yuer-q0azh0D",
        "colab_type": "code",
        "outputId": "9fe900d8-c6e8-423a-c7f7-7c0783abfc7f",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 1000
        }
      },
      "source": [
        "#1.2. side 설정한 경우 (메타레이블)\n",
        "\n",
        " # 3.4.번 문제에서도 활용되기에 미리 메타레이블을 만들어보자. side를 정하자.\n",
        " #side는 교차 ewm 사용.\n",
        "\n",
        "fast_window = 3\n",
        "slow_window = 6\n",
        "\n",
        "close_df = (pd.DataFrame()\n",
        "            .assign(price=close)\n",
        "            .assign(fast=close.ewm(fast_window).mean())\n",
        "            .assign(slow=close.ewm(slow_window).mean()))\n",
        "\n",
        "def get_up_cross(df):\n",
        "    crit1 = df.fast.shift(1) < df.slow.shift(1)\n",
        "    crit2 = df.fast > df.slow\n",
        "    return df.fast[(crit1) & (crit2)]\n",
        "\n",
        "def get_down_cross(df):\n",
        "    crit1 = df.fast.shift(1) > df.slow.shift(1)\n",
        "    crit2 = df.fast < df.slow\n",
        "    return df.fast[(crit1) & (crit2)]\n",
        "\n",
        "up = get_up_cross(close_df)\n",
        "down = get_down_cross(close_df)\n",
        "\n",
        "side_up = pd.Series(1, index=up.index)\n",
        "side_down = pd.Series(-1, index=down.index)\n",
        "side = pd.concat([side_up,side_down]).sort_index()\n",
        "\n",
        "side\n",
        "\n",
        "#side"
      ],
      "execution_count": 29,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "date_time\n",
              "2009-09-29 15:53:15   -1\n",
              "2009-09-30 09:32:03    1\n",
              "2009-09-30 09:44:47   -1\n",
              "2009-10-05 10:09:51    1\n",
              "2009-10-13 10:02:16   -1\n",
              "2009-10-14 09:34:13    1\n",
              "2009-10-16 09:38:27   -1\n",
              "2009-10-19 10:28:55    1\n",
              "2009-10-20 11:48:54   -1\n",
              "2009-10-21 09:52:55    1\n",
              "2009-10-21 15:18:03   -1\n",
              "2009-10-22 14:41:20    1\n",
              "2009-10-23 11:22:52   -1\n",
              "2009-10-29 10:51:55    1\n",
              "2009-10-30 11:38:14   -1\n",
              "2009-11-02 10:00:34    1\n",
              "2009-11-02 12:37:26   -1\n",
              "2009-11-02 15:53:21    1\n",
              "2009-11-03 11:25:46   -1\n",
              "2009-11-03 12:43:41    1\n",
              "2009-11-04 15:43:57   -1\n",
              "2009-11-05 11:02:27    1\n",
              "2009-11-12 13:45:18   -1\n",
              "2009-11-13 12:43:29    1\n",
              "2009-11-13 14:48:51   -1\n",
              "2009-11-16 09:56:38    1\n",
              "2009-11-17 11:01:30   -1\n",
              "2009-11-17 15:00:35    1\n",
              "2009-11-19 09:45:02   -1\n",
              "2009-11-23 09:30:00    1\n",
              "                      ..\n",
              "2019-05-30 11:55:07   -1\n",
              "2019-05-30 15:58:59    1\n",
              "2019-05-31 09:32:57   -1\n",
              "2019-06-03 09:43:04    1\n",
              "2019-06-03 13:03:30   -1\n",
              "2019-06-03 13:25:31    1\n",
              "2019-06-03 13:40:49   -1\n",
              "2019-06-03 13:58:15    1\n",
              "2019-06-03 15:01:52   -1\n",
              "2019-06-03 15:59:59    1\n",
              "2019-06-10 15:31:30   -1\n",
              "2019-06-11 09:30:00    1\n",
              "2019-06-11 12:42:19   -1\n",
              "2019-06-13 09:36:29    1\n",
              "2019-06-13 15:49:50   -1\n",
              "2019-06-13 15:58:26    1\n",
              "2019-06-14 10:08:37   -1\n",
              "2019-06-14 15:03:25    1\n",
              "2019-06-17 09:30:00   -1\n",
              "2019-06-18 09:39:43    1\n",
              "2019-06-18 15:55:10   -1\n",
              "2019-06-19 09:29:59    1\n",
              "2019-06-19 13:12:10   -1\n",
              "2019-06-19 14:01:58    1\n",
              "2019-06-20 12:24:38   -1\n",
              "2019-06-20 12:50:26    1\n",
              "2019-06-21 15:59:41   -1\n",
              "2019-06-26 11:05:28    1\n",
              "2019-06-26 14:29:49   -1\n",
              "2019-06-27 10:09:28    1\n",
              "Length: 3432, dtype: int64"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 29
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "1F7jx3jlCHjY",
        "colab_type": "code",
        "outputId": "a4ac94b2-5341-4fb7-c411-c5ec5e6b5c49",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 34
        }
      },
      "source": [
        "len(side)"
      ],
      "execution_count": 30,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "3432"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 30
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "R_QUwTH8z5WS",
        "colab_type": "code",
        "outputId": "828a8634-0d7b-48ed-f180-17fd7728e716",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 1000
        }
      },
      "source": [
        "#meta labeling events\n",
        "\n",
        "events2 = labeling.get_events(close, t_events, pt_sl, target, min_ret=0.01, num_threads=1 , vertical_barrier_times=vertical_barrier, side_prediction=side )\n",
        "events2\n",
        "\n",
        "#with side (meta-labeling)"
      ],
      "execution_count": 31,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "/usr/local/lib/python3.6/dist-packages/mlfinlab/labeling/labeling.py:122: FutureWarning: \n",
            "Passing list-likes to .loc or [] with any missing label will raise\n",
            "KeyError in the future, you can use .reindex() as an alternative.\n",
            "\n",
            "See the documentation here:\n",
            "https://pandas.pydata.org/pandas-docs/stable/indexing.html#deprecate-loc-reindex-listlike\n",
            "  target = target.loc[t_events]\n",
            "/usr/local/lib/python3.6/dist-packages/mlfinlab/labeling/labeling.py:134: FutureWarning: \n",
            "Passing list-likes to .loc or [] with any missing label will raise\n",
            "KeyError in the future, you can use .reindex() as an alternative.\n",
            "\n",
            "See the documentation here:\n",
            "https://pandas.pydata.org/pandas-docs/stable/indexing.html#deprecate-loc-reindex-listlike\n",
            "  side_ = side_prediction.loc[target.index]\n"
          ],
          "name": "stderr"
        },
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>side</th>\n",
              "      <th>t1</th>\n",
              "      <th>trgt</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>2009-10-02 09:32:42</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2009-10-05 09:35:27</td>\n",
              "      <td>0.010414</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-02 10:34:31</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2009-10-05 09:35:27</td>\n",
              "      <td>0.010400</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-05 12:55:39</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2009-10-06 13:09:38</td>\n",
              "      <td>0.011719</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-06 09:31:29</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2009-10-07 09:47:25</td>\n",
              "      <td>0.016259</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-06 11:16:28</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2009-10-07 12:14:25</td>\n",
              "      <td>0.017185</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-06 14:08:35</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2009-10-07 14:12:08</td>\n",
              "      <td>0.017471</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-07 11:04:15</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2009-10-08 11:29:32</td>\n",
              "      <td>0.015954</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-08 09:29:50</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2009-10-09 09:41:48</td>\n",
              "      <td>0.014741</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-12 09:43:45</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2009-10-13 10:02:16</td>\n",
              "      <td>0.012437</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-13 10:02:16</th>\n",
              "      <td>-1.0</td>\n",
              "      <td>2009-10-14 09:34:13</td>\n",
              "      <td>0.011074</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-14 09:34:13</th>\n",
              "      <td>1.0</td>\n",
              "      <td>2009-10-15 09:59:26</td>\n",
              "      <td>0.010597</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-14 15:04:11</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2009-10-15 15:18:10</td>\n",
              "      <td>0.010634</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-16 09:38:27</th>\n",
              "      <td>-1.0</td>\n",
              "      <td>2009-10-19 09:35:41</td>\n",
              "      <td>0.010277</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-19 10:28:55</th>\n",
              "      <td>1.0</td>\n",
              "      <td>2009-10-20 10:36:58</td>\n",
              "      <td>0.010475</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-22 14:17:14</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2009-10-23 14:32:00</td>\n",
              "      <td>0.010254</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-23 10:44:02</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2009-10-26 09:42:08</td>\n",
              "      <td>0.010212</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-23 11:22:52</th>\n",
              "      <td>-1.0</td>\n",
              "      <td>2009-10-26 09:42:08</td>\n",
              "      <td>0.010113</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-26 10:24:21</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2009-10-27 10:34:43</td>\n",
              "      <td>0.010046</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-26 15:08:07</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2009-10-27 15:34:39</td>\n",
              "      <td>0.010021</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-27 10:02:21</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2009-10-28 10:03:59</td>\n",
              "      <td>0.010398</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-27 12:18:51</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2009-10-28 12:38:38</td>\n",
              "      <td>0.010670</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-29 13:06:32</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2009-10-30 13:07:56</td>\n",
              "      <td>0.010090</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-30 09:58:03</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2009-11-02 09:29:50</td>\n",
              "      <td>0.012361</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-30 11:38:14</th>\n",
              "      <td>-1.0</td>\n",
              "      <td>2009-10-30 12:49:44</td>\n",
              "      <td>0.012099</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-30 12:49:44</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2009-11-02 09:29:50</td>\n",
              "      <td>0.011894</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-02 09:54:04</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2009-11-03 09:57:00</td>\n",
              "      <td>0.013649</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-02 12:37:26</th>\n",
              "      <td>-1.0</td>\n",
              "      <td>2009-11-03 12:43:41</td>\n",
              "      <td>0.014020</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-02 12:53:12</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2009-11-03 13:32:03</td>\n",
              "      <td>0.013749</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-02 14:50:33</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2009-11-03 15:16:14</td>\n",
              "      <td>0.012509</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-03 14:02:53</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2009-11-04 14:18:58</td>\n",
              "      <td>0.010853</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>...</th>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 11:18:49</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2018-12-27 11:20:15</td>\n",
              "      <td>0.010568</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 11:56:55</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2018-12-27 11:56:55</td>\n",
              "      <td>0.011621</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 12:15:07</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2018-12-27 12:16:25</td>\n",
              "      <td>0.013061</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 13:20:13</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2018-12-27 13:21:34</td>\n",
              "      <td>0.013520</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 13:54:04</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2018-12-27 13:55:00</td>\n",
              "      <td>0.013013</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 15:12:52</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2018-12-27 15:13:29</td>\n",
              "      <td>0.010516</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 15:36:41</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2018-12-27 15:37:14</td>\n",
              "      <td>0.010180</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 15:55:00</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2018-12-27 15:55:04</td>\n",
              "      <td>0.011307</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-27 09:30:00</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2018-12-28 09:30:00</td>\n",
              "      <td>0.011859</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-27 09:48:37</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2018-12-28 09:53:07</td>\n",
              "      <td>0.010464</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-27 14:43:44</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2018-12-28 14:45:51</td>\n",
              "      <td>0.010930</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-28 10:28:33</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2018-12-31 09:30:00</td>\n",
              "      <td>0.011270</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-31 09:30:00</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2019-01-02 09:30:00</td>\n",
              "      <td>0.013854</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-31 10:58:46</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2019-01-02 09:30:00</td>\n",
              "      <td>0.011591</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-04 10:23:47</th>\n",
              "      <td>1.0</td>\n",
              "      <td>2019-01-07 09:30:00</td>\n",
              "      <td>0.014161</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-04 12:41:59</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2019-01-07 09:30:00</td>\n",
              "      <td>0.010130</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-07 10:36:22</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2019-01-08 10:45:29</td>\n",
              "      <td>0.013365</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-07 12:25:57</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2019-01-08 12:27:42</td>\n",
              "      <td>0.011640</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-22 11:56:00</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2019-01-23 12:08:47</td>\n",
              "      <td>0.013127</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-23 09:41:35</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2019-01-24 09:43:15</td>\n",
              "      <td>0.011577</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-23 11:26:41</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2019-01-24 11:34:47</td>\n",
              "      <td>0.011245</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-23 14:15:38</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2019-01-24 14:20:49</td>\n",
              "      <td>0.010252</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-03-25 09:51:16</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2019-03-26 09:59:19</td>\n",
              "      <td>0.010639</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-05-14 09:42:08</th>\n",
              "      <td>1.0</td>\n",
              "      <td>2019-05-15 09:45:03</td>\n",
              "      <td>0.011580</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-05-14 11:59:27</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2019-05-15 12:05:31</td>\n",
              "      <td>0.013155</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-05-15 09:30:00</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2019-05-16 09:30:00</td>\n",
              "      <td>0.014566</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-05-15 10:38:24</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2019-05-16 11:01:47</td>\n",
              "      <td>0.013474</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-05-16 10:01:27</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2019-05-17 10:09:42</td>\n",
              "      <td>0.011151</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-05-17 09:30:00</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2019-05-20 09:30:00</td>\n",
              "      <td>0.010195</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-06-05 09:30:00</th>\n",
              "      <td>NaN</td>\n",
              "      <td>2019-06-06 09:30:07</td>\n",
              "      <td>0.012501</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "<p>1088 rows × 3 columns</p>\n",
              "</div>"
            ],
            "text/plain": [
              "                     side                  t1      trgt\n",
              "2009-10-02 09:32:42   NaN 2009-10-05 09:35:27  0.010414\n",
              "2009-10-02 10:34:31   NaN 2009-10-05 09:35:27  0.010400\n",
              "2009-10-05 12:55:39   NaN 2009-10-06 13:09:38  0.011719\n",
              "2009-10-06 09:31:29   NaN 2009-10-07 09:47:25  0.016259\n",
              "2009-10-06 11:16:28   NaN 2009-10-07 12:14:25  0.017185\n",
              "2009-10-06 14:08:35   NaN 2009-10-07 14:12:08  0.017471\n",
              "2009-10-07 11:04:15   NaN 2009-10-08 11:29:32  0.015954\n",
              "2009-10-08 09:29:50   NaN 2009-10-09 09:41:48  0.014741\n",
              "2009-10-12 09:43:45   NaN 2009-10-13 10:02:16  0.012437\n",
              "2009-10-13 10:02:16  -1.0 2009-10-14 09:34:13  0.011074\n",
              "2009-10-14 09:34:13   1.0 2009-10-15 09:59:26  0.010597\n",
              "2009-10-14 15:04:11   NaN 2009-10-15 15:18:10  0.010634\n",
              "2009-10-16 09:38:27  -1.0 2009-10-19 09:35:41  0.010277\n",
              "2009-10-19 10:28:55   1.0 2009-10-20 10:36:58  0.010475\n",
              "2009-10-22 14:17:14   NaN 2009-10-23 14:32:00  0.010254\n",
              "2009-10-23 10:44:02   NaN 2009-10-26 09:42:08  0.010212\n",
              "2009-10-23 11:22:52  -1.0 2009-10-26 09:42:08  0.010113\n",
              "2009-10-26 10:24:21   NaN 2009-10-27 10:34:43  0.010046\n",
              "2009-10-26 15:08:07   NaN 2009-10-27 15:34:39  0.010021\n",
              "2009-10-27 10:02:21   NaN 2009-10-28 10:03:59  0.010398\n",
              "2009-10-27 12:18:51   NaN 2009-10-28 12:38:38  0.010670\n",
              "2009-10-29 13:06:32   NaN 2009-10-30 13:07:56  0.010090\n",
              "2009-10-30 09:58:03   NaN 2009-11-02 09:29:50  0.012361\n",
              "2009-10-30 11:38:14  -1.0 2009-10-30 12:49:44  0.012099\n",
              "2009-10-30 12:49:44   NaN 2009-11-02 09:29:50  0.011894\n",
              "2009-11-02 09:54:04   NaN 2009-11-03 09:57:00  0.013649\n",
              "2009-11-02 12:37:26  -1.0 2009-11-03 12:43:41  0.014020\n",
              "2009-11-02 12:53:12   NaN 2009-11-03 13:32:03  0.013749\n",
              "2009-11-02 14:50:33   NaN 2009-11-03 15:16:14  0.012509\n",
              "2009-11-03 14:02:53   NaN 2009-11-04 14:18:58  0.010853\n",
              "...                   ...                 ...       ...\n",
              "2018-12-26 11:18:49   NaN 2018-12-27 11:20:15  0.010568\n",
              "2018-12-26 11:56:55   NaN 2018-12-27 11:56:55  0.011621\n",
              "2018-12-26 12:15:07   NaN 2018-12-27 12:16:25  0.013061\n",
              "2018-12-26 13:20:13   NaN 2018-12-27 13:21:34  0.013520\n",
              "2018-12-26 13:54:04   NaN 2018-12-27 13:55:00  0.013013\n",
              "2018-12-26 15:12:52   NaN 2018-12-27 15:13:29  0.010516\n",
              "2018-12-26 15:36:41   NaN 2018-12-27 15:37:14  0.010180\n",
              "2018-12-26 15:55:00   NaN 2018-12-27 15:55:04  0.011307\n",
              "2018-12-27 09:30:00   NaN 2018-12-28 09:30:00  0.011859\n",
              "2018-12-27 09:48:37   NaN 2018-12-28 09:53:07  0.010464\n",
              "2018-12-27 14:43:44   NaN 2018-12-28 14:45:51  0.010930\n",
              "2018-12-28 10:28:33   NaN 2018-12-31 09:30:00  0.011270\n",
              "2018-12-31 09:30:00   NaN 2019-01-02 09:30:00  0.013854\n",
              "2018-12-31 10:58:46   NaN 2019-01-02 09:30:00  0.011591\n",
              "2019-01-04 10:23:47   1.0 2019-01-07 09:30:00  0.014161\n",
              "2019-01-04 12:41:59   NaN 2019-01-07 09:30:00  0.010130\n",
              "2019-01-07 10:36:22   NaN 2019-01-08 10:45:29  0.013365\n",
              "2019-01-07 12:25:57   NaN 2019-01-08 12:27:42  0.011640\n",
              "2019-01-22 11:56:00   NaN 2019-01-23 12:08:47  0.013127\n",
              "2019-01-23 09:41:35   NaN 2019-01-24 09:43:15  0.011577\n",
              "2019-01-23 11:26:41   NaN 2019-01-24 11:34:47  0.011245\n",
              "2019-01-23 14:15:38   NaN 2019-01-24 14:20:49  0.010252\n",
              "2019-03-25 09:51:16   NaN 2019-03-26 09:59:19  0.010639\n",
              "2019-05-14 09:42:08   1.0 2019-05-15 09:45:03  0.011580\n",
              "2019-05-14 11:59:27   NaN 2019-05-15 12:05:31  0.013155\n",
              "2019-05-15 09:30:00   NaN 2019-05-16 09:30:00  0.014566\n",
              "2019-05-15 10:38:24   NaN 2019-05-16 11:01:47  0.013474\n",
              "2019-05-16 10:01:27   NaN 2019-05-17 10:09:42  0.011151\n",
              "2019-05-17 09:30:00   NaN 2019-05-20 09:30:00  0.010195\n",
              "2019-06-05 09:30:00   NaN 2019-06-06 09:30:07  0.012501\n",
              "\n",
              "[1088 rows x 3 columns]"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 31
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "A8WRYDN2j5qi",
        "colab_type": "code",
        "outputId": "7e13316a-1ad8-403b-c543-da9fa154cca6",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 34
        }
      },
      "source": [
        "len(events2)"
      ],
      "execution_count": 32,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "1088"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 32
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "H2ZKMBpIpeFk",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "# Tripple Barrier 생성하기\n",
        "\n",
        "molecule = events.index\n",
        "\n",
        "tripple_barrier = labeling.apply_pt_sl_on_t1(close,events2,pt_sl,molecule)"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "tptpe58gVIL1",
        "colab_type": "code",
        "outputId": "251c93ce-abbb-406e-f62c-fd1edb44e67c",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 1000
        }
      },
      "source": [
        "tripple_barrier"
      ],
      "execution_count": 34,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>t1</th>\n",
              "      <th>sl</th>\n",
              "      <th>pt</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>2009-10-02 09:32:42</th>\n",
              "      <td>2009-10-05 09:35:27</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-02 10:34:31</th>\n",
              "      <td>2009-10-05 09:35:27</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-05 12:55:39</th>\n",
              "      <td>2009-10-06 13:09:38</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-06 09:31:29</th>\n",
              "      <td>2009-10-07 09:47:25</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-06 11:16:28</th>\n",
              "      <td>2009-10-07 12:14:25</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-06 14:08:35</th>\n",
              "      <td>2009-10-07 14:12:08</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-07 11:04:15</th>\n",
              "      <td>2009-10-08 11:29:32</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-08 09:29:50</th>\n",
              "      <td>2009-10-09 09:41:48</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-12 09:43:45</th>\n",
              "      <td>2009-10-13 10:02:16</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-13 10:02:16</th>\n",
              "      <td>2009-10-14 09:34:13</td>\n",
              "      <td>2009-10-14 09:34:13</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-14 09:34:13</th>\n",
              "      <td>2009-10-15 09:59:26</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-14 15:04:11</th>\n",
              "      <td>2009-10-15 15:18:10</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-16 09:38:27</th>\n",
              "      <td>2009-10-19 09:35:41</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-19 10:28:55</th>\n",
              "      <td>2009-10-20 10:36:58</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-22 14:17:14</th>\n",
              "      <td>2009-10-23 14:32:00</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-23 10:44:02</th>\n",
              "      <td>2009-10-26 09:42:08</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-23 11:22:52</th>\n",
              "      <td>2009-10-26 09:42:08</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-26 10:24:21</th>\n",
              "      <td>2009-10-27 10:34:43</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-26 15:08:07</th>\n",
              "      <td>2009-10-27 15:34:39</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-27 10:02:21</th>\n",
              "      <td>2009-10-28 10:03:59</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-27 12:18:51</th>\n",
              "      <td>2009-10-28 12:38:38</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-29 13:06:32</th>\n",
              "      <td>2009-10-30 13:07:56</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-30 09:58:03</th>\n",
              "      <td>2009-11-02 09:29:50</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-30 11:38:14</th>\n",
              "      <td>2009-10-30 12:49:44</td>\n",
              "      <td>NaT</td>\n",
              "      <td>2009-10-30 12:49:44</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-30 12:49:44</th>\n",
              "      <td>2009-11-02 09:29:50</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-02 09:54:04</th>\n",
              "      <td>2009-11-03 09:57:00</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-02 12:37:26</th>\n",
              "      <td>2009-11-03 12:43:41</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-02 12:53:12</th>\n",
              "      <td>2009-11-03 13:32:03</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-02 14:50:33</th>\n",
              "      <td>2009-11-03 15:16:14</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-03 14:02:53</th>\n",
              "      <td>2009-11-04 14:18:58</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>...</th>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 11:18:49</th>\n",
              "      <td>2018-12-27 11:20:15</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 11:56:55</th>\n",
              "      <td>2018-12-27 11:56:55</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 12:15:07</th>\n",
              "      <td>2018-12-27 12:16:25</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 13:20:13</th>\n",
              "      <td>2018-12-27 13:21:34</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 13:54:04</th>\n",
              "      <td>2018-12-27 13:55:00</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 15:12:52</th>\n",
              "      <td>2018-12-27 15:13:29</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 15:36:41</th>\n",
              "      <td>2018-12-27 15:37:14</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 15:55:00</th>\n",
              "      <td>2018-12-27 15:55:04</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-27 09:30:00</th>\n",
              "      <td>2018-12-28 09:30:00</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-27 09:48:37</th>\n",
              "      <td>2018-12-28 09:53:07</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-27 14:43:44</th>\n",
              "      <td>2018-12-28 14:45:51</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-28 10:28:33</th>\n",
              "      <td>2018-12-31 09:30:00</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-31 09:30:00</th>\n",
              "      <td>2019-01-02 09:30:00</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-31 10:58:46</th>\n",
              "      <td>2019-01-02 09:30:00</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-04 10:23:47</th>\n",
              "      <td>2019-01-07 09:30:00</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-04 12:41:59</th>\n",
              "      <td>2019-01-07 09:30:00</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-07 10:36:22</th>\n",
              "      <td>2019-01-08 10:45:29</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-07 12:25:57</th>\n",
              "      <td>2019-01-08 12:27:42</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-22 11:56:00</th>\n",
              "      <td>2019-01-23 12:08:47</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-23 09:41:35</th>\n",
              "      <td>2019-01-24 09:43:15</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-23 11:26:41</th>\n",
              "      <td>2019-01-24 11:34:47</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-23 14:15:38</th>\n",
              "      <td>2019-01-24 14:20:49</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-03-25 09:51:16</th>\n",
              "      <td>2019-03-26 09:59:19</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-05-14 09:42:08</th>\n",
              "      <td>2019-05-15 09:45:03</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-05-14 11:59:27</th>\n",
              "      <td>2019-05-15 12:05:31</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-05-15 09:30:00</th>\n",
              "      <td>2019-05-16 09:30:00</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-05-15 10:38:24</th>\n",
              "      <td>2019-05-16 11:01:47</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-05-16 10:01:27</th>\n",
              "      <td>2019-05-17 10:09:42</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-05-17 09:30:00</th>\n",
              "      <td>2019-05-20 09:30:00</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-06-05 09:30:00</th>\n",
              "      <td>2019-06-06 09:30:07</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "<p>1088 rows × 3 columns</p>\n",
              "</div>"
            ],
            "text/plain": [
              "                                     t1                  sl                  pt\n",
              "2009-10-02 09:32:42 2009-10-05 09:35:27                 NaT                 NaT\n",
              "2009-10-02 10:34:31 2009-10-05 09:35:27                 NaT                 NaT\n",
              "2009-10-05 12:55:39 2009-10-06 13:09:38                 NaT                 NaT\n",
              "2009-10-06 09:31:29 2009-10-07 09:47:25                 NaT                 NaT\n",
              "2009-10-06 11:16:28 2009-10-07 12:14:25                 NaT                 NaT\n",
              "2009-10-06 14:08:35 2009-10-07 14:12:08                 NaT                 NaT\n",
              "2009-10-07 11:04:15 2009-10-08 11:29:32                 NaT                 NaT\n",
              "2009-10-08 09:29:50 2009-10-09 09:41:48                 NaT                 NaT\n",
              "2009-10-12 09:43:45 2009-10-13 10:02:16                 NaT                 NaT\n",
              "2009-10-13 10:02:16 2009-10-14 09:34:13 2009-10-14 09:34:13                 NaT\n",
              "2009-10-14 09:34:13 2009-10-15 09:59:26                 NaT                 NaT\n",
              "2009-10-14 15:04:11 2009-10-15 15:18:10                 NaT                 NaT\n",
              "2009-10-16 09:38:27 2009-10-19 09:35:41                 NaT                 NaT\n",
              "2009-10-19 10:28:55 2009-10-20 10:36:58                 NaT                 NaT\n",
              "2009-10-22 14:17:14 2009-10-23 14:32:00                 NaT                 NaT\n",
              "2009-10-23 10:44:02 2009-10-26 09:42:08                 NaT                 NaT\n",
              "2009-10-23 11:22:52 2009-10-26 09:42:08                 NaT                 NaT\n",
              "2009-10-26 10:24:21 2009-10-27 10:34:43                 NaT                 NaT\n",
              "2009-10-26 15:08:07 2009-10-27 15:34:39                 NaT                 NaT\n",
              "2009-10-27 10:02:21 2009-10-28 10:03:59                 NaT                 NaT\n",
              "2009-10-27 12:18:51 2009-10-28 12:38:38                 NaT                 NaT\n",
              "2009-10-29 13:06:32 2009-10-30 13:07:56                 NaT                 NaT\n",
              "2009-10-30 09:58:03 2009-11-02 09:29:50                 NaT                 NaT\n",
              "2009-10-30 11:38:14 2009-10-30 12:49:44                 NaT 2009-10-30 12:49:44\n",
              "2009-10-30 12:49:44 2009-11-02 09:29:50                 NaT                 NaT\n",
              "2009-11-02 09:54:04 2009-11-03 09:57:00                 NaT                 NaT\n",
              "2009-11-02 12:37:26 2009-11-03 12:43:41                 NaT                 NaT\n",
              "2009-11-02 12:53:12 2009-11-03 13:32:03                 NaT                 NaT\n",
              "2009-11-02 14:50:33 2009-11-03 15:16:14                 NaT                 NaT\n",
              "2009-11-03 14:02:53 2009-11-04 14:18:58                 NaT                 NaT\n",
              "...                                 ...                 ...                 ...\n",
              "2018-12-26 11:18:49 2018-12-27 11:20:15                 NaT                 NaT\n",
              "2018-12-26 11:56:55 2018-12-27 11:56:55                 NaT                 NaT\n",
              "2018-12-26 12:15:07 2018-12-27 12:16:25                 NaT                 NaT\n",
              "2018-12-26 13:20:13 2018-12-27 13:21:34                 NaT                 NaT\n",
              "2018-12-26 13:54:04 2018-12-27 13:55:00                 NaT                 NaT\n",
              "2018-12-26 15:12:52 2018-12-27 15:13:29                 NaT                 NaT\n",
              "2018-12-26 15:36:41 2018-12-27 15:37:14                 NaT                 NaT\n",
              "2018-12-26 15:55:00 2018-12-27 15:55:04                 NaT                 NaT\n",
              "2018-12-27 09:30:00 2018-12-28 09:30:00                 NaT                 NaT\n",
              "2018-12-27 09:48:37 2018-12-28 09:53:07                 NaT                 NaT\n",
              "2018-12-27 14:43:44 2018-12-28 14:45:51                 NaT                 NaT\n",
              "2018-12-28 10:28:33 2018-12-31 09:30:00                 NaT                 NaT\n",
              "2018-12-31 09:30:00 2019-01-02 09:30:00                 NaT                 NaT\n",
              "2018-12-31 10:58:46 2019-01-02 09:30:00                 NaT                 NaT\n",
              "2019-01-04 10:23:47 2019-01-07 09:30:00                 NaT                 NaT\n",
              "2019-01-04 12:41:59 2019-01-07 09:30:00                 NaT                 NaT\n",
              "2019-01-07 10:36:22 2019-01-08 10:45:29                 NaT                 NaT\n",
              "2019-01-07 12:25:57 2019-01-08 12:27:42                 NaT                 NaT\n",
              "2019-01-22 11:56:00 2019-01-23 12:08:47                 NaT                 NaT\n",
              "2019-01-23 09:41:35 2019-01-24 09:43:15                 NaT                 NaT\n",
              "2019-01-23 11:26:41 2019-01-24 11:34:47                 NaT                 NaT\n",
              "2019-01-23 14:15:38 2019-01-24 14:20:49                 NaT                 NaT\n",
              "2019-03-25 09:51:16 2019-03-26 09:59:19                 NaT                 NaT\n",
              "2019-05-14 09:42:08 2019-05-15 09:45:03                 NaT                 NaT\n",
              "2019-05-14 11:59:27 2019-05-15 12:05:31                 NaT                 NaT\n",
              "2019-05-15 09:30:00 2019-05-16 09:30:00                 NaT                 NaT\n",
              "2019-05-15 10:38:24 2019-05-16 11:01:47                 NaT                 NaT\n",
              "2019-05-16 10:01:27 2019-05-17 10:09:42                 NaT                 NaT\n",
              "2019-05-17 09:30:00 2019-05-20 09:30:00                 NaT                 NaT\n",
              "2019-06-05 09:30:00 2019-06-06 09:30:07                 NaT                 NaT\n",
              "\n",
              "[1088 rows x 3 columns]"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 34
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "KGnoM8fLVSda",
        "colab_type": "code",
        "outputId": "cac70dc8-f3a8-43dd-aab1-3bfa9cc1c94d",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 1000
        }
      },
      "source": [
        "tripple_barrier_dropna = tripple_barrier.dropna(how='all')\n",
        "tripple_barrier_dropna"
      ],
      "execution_count": 35,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>t1</th>\n",
              "      <th>sl</th>\n",
              "      <th>pt</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>2009-10-02 09:32:42</th>\n",
              "      <td>2009-10-05 09:35:27</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-02 10:34:31</th>\n",
              "      <td>2009-10-05 09:35:27</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-05 12:55:39</th>\n",
              "      <td>2009-10-06 13:09:38</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-06 09:31:29</th>\n",
              "      <td>2009-10-07 09:47:25</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-06 11:16:28</th>\n",
              "      <td>2009-10-07 12:14:25</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-06 14:08:35</th>\n",
              "      <td>2009-10-07 14:12:08</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-07 11:04:15</th>\n",
              "      <td>2009-10-08 11:29:32</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-08 09:29:50</th>\n",
              "      <td>2009-10-09 09:41:48</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-12 09:43:45</th>\n",
              "      <td>2009-10-13 10:02:16</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-13 10:02:16</th>\n",
              "      <td>2009-10-14 09:34:13</td>\n",
              "      <td>2009-10-14 09:34:13</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-14 09:34:13</th>\n",
              "      <td>2009-10-15 09:59:26</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-14 15:04:11</th>\n",
              "      <td>2009-10-15 15:18:10</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-16 09:38:27</th>\n",
              "      <td>2009-10-19 09:35:41</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-19 10:28:55</th>\n",
              "      <td>2009-10-20 10:36:58</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-22 14:17:14</th>\n",
              "      <td>2009-10-23 14:32:00</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-23 10:44:02</th>\n",
              "      <td>2009-10-26 09:42:08</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-23 11:22:52</th>\n",
              "      <td>2009-10-26 09:42:08</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-26 10:24:21</th>\n",
              "      <td>2009-10-27 10:34:43</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-26 15:08:07</th>\n",
              "      <td>2009-10-27 15:34:39</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-27 10:02:21</th>\n",
              "      <td>2009-10-28 10:03:59</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-27 12:18:51</th>\n",
              "      <td>2009-10-28 12:38:38</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-29 13:06:32</th>\n",
              "      <td>2009-10-30 13:07:56</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-30 09:58:03</th>\n",
              "      <td>2009-11-02 09:29:50</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-30 11:38:14</th>\n",
              "      <td>2009-10-30 12:49:44</td>\n",
              "      <td>NaT</td>\n",
              "      <td>2009-10-30 12:49:44</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-30 12:49:44</th>\n",
              "      <td>2009-11-02 09:29:50</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-02 09:54:04</th>\n",
              "      <td>2009-11-03 09:57:00</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-02 12:37:26</th>\n",
              "      <td>2009-11-03 12:43:41</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-02 12:53:12</th>\n",
              "      <td>2009-11-03 13:32:03</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-02 14:50:33</th>\n",
              "      <td>2009-11-03 15:16:14</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-03 14:02:53</th>\n",
              "      <td>2009-11-04 14:18:58</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>...</th>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 11:18:49</th>\n",
              "      <td>2018-12-27 11:20:15</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 11:56:55</th>\n",
              "      <td>2018-12-27 11:56:55</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 12:15:07</th>\n",
              "      <td>2018-12-27 12:16:25</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 13:20:13</th>\n",
              "      <td>2018-12-27 13:21:34</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 13:54:04</th>\n",
              "      <td>2018-12-27 13:55:00</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 15:12:52</th>\n",
              "      <td>2018-12-27 15:13:29</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 15:36:41</th>\n",
              "      <td>2018-12-27 15:37:14</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 15:55:00</th>\n",
              "      <td>2018-12-27 15:55:04</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-27 09:30:00</th>\n",
              "      <td>2018-12-28 09:30:00</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-27 09:48:37</th>\n",
              "      <td>2018-12-28 09:53:07</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-27 14:43:44</th>\n",
              "      <td>2018-12-28 14:45:51</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-28 10:28:33</th>\n",
              "      <td>2018-12-31 09:30:00</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-31 09:30:00</th>\n",
              "      <td>2019-01-02 09:30:00</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-31 10:58:46</th>\n",
              "      <td>2019-01-02 09:30:00</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-04 10:23:47</th>\n",
              "      <td>2019-01-07 09:30:00</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-04 12:41:59</th>\n",
              "      <td>2019-01-07 09:30:00</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-07 10:36:22</th>\n",
              "      <td>2019-01-08 10:45:29</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-07 12:25:57</th>\n",
              "      <td>2019-01-08 12:27:42</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-22 11:56:00</th>\n",
              "      <td>2019-01-23 12:08:47</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-23 09:41:35</th>\n",
              "      <td>2019-01-24 09:43:15</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-23 11:26:41</th>\n",
              "      <td>2019-01-24 11:34:47</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-23 14:15:38</th>\n",
              "      <td>2019-01-24 14:20:49</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-03-25 09:51:16</th>\n",
              "      <td>2019-03-26 09:59:19</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-05-14 09:42:08</th>\n",
              "      <td>2019-05-15 09:45:03</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-05-14 11:59:27</th>\n",
              "      <td>2019-05-15 12:05:31</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-05-15 09:30:00</th>\n",
              "      <td>2019-05-16 09:30:00</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-05-15 10:38:24</th>\n",
              "      <td>2019-05-16 11:01:47</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-05-16 10:01:27</th>\n",
              "      <td>2019-05-17 10:09:42</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-05-17 09:30:00</th>\n",
              "      <td>2019-05-20 09:30:00</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-06-05 09:30:00</th>\n",
              "      <td>2019-06-06 09:30:07</td>\n",
              "      <td>NaT</td>\n",
              "      <td>NaT</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "<p>1088 rows × 3 columns</p>\n",
              "</div>"
            ],
            "text/plain": [
              "                                     t1                  sl                  pt\n",
              "2009-10-02 09:32:42 2009-10-05 09:35:27                 NaT                 NaT\n",
              "2009-10-02 10:34:31 2009-10-05 09:35:27                 NaT                 NaT\n",
              "2009-10-05 12:55:39 2009-10-06 13:09:38                 NaT                 NaT\n",
              "2009-10-06 09:31:29 2009-10-07 09:47:25                 NaT                 NaT\n",
              "2009-10-06 11:16:28 2009-10-07 12:14:25                 NaT                 NaT\n",
              "2009-10-06 14:08:35 2009-10-07 14:12:08                 NaT                 NaT\n",
              "2009-10-07 11:04:15 2009-10-08 11:29:32                 NaT                 NaT\n",
              "2009-10-08 09:29:50 2009-10-09 09:41:48                 NaT                 NaT\n",
              "2009-10-12 09:43:45 2009-10-13 10:02:16                 NaT                 NaT\n",
              "2009-10-13 10:02:16 2009-10-14 09:34:13 2009-10-14 09:34:13                 NaT\n",
              "2009-10-14 09:34:13 2009-10-15 09:59:26                 NaT                 NaT\n",
              "2009-10-14 15:04:11 2009-10-15 15:18:10                 NaT                 NaT\n",
              "2009-10-16 09:38:27 2009-10-19 09:35:41                 NaT                 NaT\n",
              "2009-10-19 10:28:55 2009-10-20 10:36:58                 NaT                 NaT\n",
              "2009-10-22 14:17:14 2009-10-23 14:32:00                 NaT                 NaT\n",
              "2009-10-23 10:44:02 2009-10-26 09:42:08                 NaT                 NaT\n",
              "2009-10-23 11:22:52 2009-10-26 09:42:08                 NaT                 NaT\n",
              "2009-10-26 10:24:21 2009-10-27 10:34:43                 NaT                 NaT\n",
              "2009-10-26 15:08:07 2009-10-27 15:34:39                 NaT                 NaT\n",
              "2009-10-27 10:02:21 2009-10-28 10:03:59                 NaT                 NaT\n",
              "2009-10-27 12:18:51 2009-10-28 12:38:38                 NaT                 NaT\n",
              "2009-10-29 13:06:32 2009-10-30 13:07:56                 NaT                 NaT\n",
              "2009-10-30 09:58:03 2009-11-02 09:29:50                 NaT                 NaT\n",
              "2009-10-30 11:38:14 2009-10-30 12:49:44                 NaT 2009-10-30 12:49:44\n",
              "2009-10-30 12:49:44 2009-11-02 09:29:50                 NaT                 NaT\n",
              "2009-11-02 09:54:04 2009-11-03 09:57:00                 NaT                 NaT\n",
              "2009-11-02 12:37:26 2009-11-03 12:43:41                 NaT                 NaT\n",
              "2009-11-02 12:53:12 2009-11-03 13:32:03                 NaT                 NaT\n",
              "2009-11-02 14:50:33 2009-11-03 15:16:14                 NaT                 NaT\n",
              "2009-11-03 14:02:53 2009-11-04 14:18:58                 NaT                 NaT\n",
              "...                                 ...                 ...                 ...\n",
              "2018-12-26 11:18:49 2018-12-27 11:20:15                 NaT                 NaT\n",
              "2018-12-26 11:56:55 2018-12-27 11:56:55                 NaT                 NaT\n",
              "2018-12-26 12:15:07 2018-12-27 12:16:25                 NaT                 NaT\n",
              "2018-12-26 13:20:13 2018-12-27 13:21:34                 NaT                 NaT\n",
              "2018-12-26 13:54:04 2018-12-27 13:55:00                 NaT                 NaT\n",
              "2018-12-26 15:12:52 2018-12-27 15:13:29                 NaT                 NaT\n",
              "2018-12-26 15:36:41 2018-12-27 15:37:14                 NaT                 NaT\n",
              "2018-12-26 15:55:00 2018-12-27 15:55:04                 NaT                 NaT\n",
              "2018-12-27 09:30:00 2018-12-28 09:30:00                 NaT                 NaT\n",
              "2018-12-27 09:48:37 2018-12-28 09:53:07                 NaT                 NaT\n",
              "2018-12-27 14:43:44 2018-12-28 14:45:51                 NaT                 NaT\n",
              "2018-12-28 10:28:33 2018-12-31 09:30:00                 NaT                 NaT\n",
              "2018-12-31 09:30:00 2019-01-02 09:30:00                 NaT                 NaT\n",
              "2018-12-31 10:58:46 2019-01-02 09:30:00                 NaT                 NaT\n",
              "2019-01-04 10:23:47 2019-01-07 09:30:00                 NaT                 NaT\n",
              "2019-01-04 12:41:59 2019-01-07 09:30:00                 NaT                 NaT\n",
              "2019-01-07 10:36:22 2019-01-08 10:45:29                 NaT                 NaT\n",
              "2019-01-07 12:25:57 2019-01-08 12:27:42                 NaT                 NaT\n",
              "2019-01-22 11:56:00 2019-01-23 12:08:47                 NaT                 NaT\n",
              "2019-01-23 09:41:35 2019-01-24 09:43:15                 NaT                 NaT\n",
              "2019-01-23 11:26:41 2019-01-24 11:34:47                 NaT                 NaT\n",
              "2019-01-23 14:15:38 2019-01-24 14:20:49                 NaT                 NaT\n",
              "2019-03-25 09:51:16 2019-03-26 09:59:19                 NaT                 NaT\n",
              "2019-05-14 09:42:08 2019-05-15 09:45:03                 NaT                 NaT\n",
              "2019-05-14 11:59:27 2019-05-15 12:05:31                 NaT                 NaT\n",
              "2019-05-15 09:30:00 2019-05-16 09:30:00                 NaT                 NaT\n",
              "2019-05-15 10:38:24 2019-05-16 11:01:47                 NaT                 NaT\n",
              "2019-05-16 10:01:27 2019-05-17 10:09:42                 NaT                 NaT\n",
              "2019-05-17 09:30:00 2019-05-20 09:30:00                 NaT                 NaT\n",
              "2019-06-05 09:30:00 2019-06-06 09:30:07                 NaT                 NaT\n",
              "\n",
              "[1088 rows x 3 columns]"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 35
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "2TGJ01ijvN6J",
        "colab_type": "text"
      },
      "source": [
        "## (d)"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "iRwAAYrpvOct",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "#bins 만들기 (labeling)\n",
        "\n",
        "bins = labeling.get_bins(events,close)"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "dlP8-CstwpuA",
        "colab_type": "code",
        "outputId": "c21d4b91-bbc7-4075-e7d4-11b0b046c7f8",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 204
        }
      },
      "source": [
        "bins.head()\n",
        "\n",
        "#without side"
      ],
      "execution_count": 37,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>ret</th>\n",
              "      <th>trgt</th>\n",
              "      <th>bin</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>2009-10-02 09:32:42</th>\n",
              "      <td>0.010761</td>\n",
              "      <td>0.010414</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-02 10:34:31</th>\n",
              "      <td>-0.000603</td>\n",
              "      <td>0.010400</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-05 12:55:39</th>\n",
              "      <td>0.013530</td>\n",
              "      <td>0.011719</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-06 09:31:29</th>\n",
              "      <td>0.000982</td>\n",
              "      <td>0.016259</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-06 11:16:28</th>\n",
              "      <td>-0.006791</td>\n",
              "      <td>0.017185</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "</div>"
            ],
            "text/plain": [
              "                          ret      trgt  bin\n",
              "2009-10-02 09:32:42  0.010761  0.010414    1\n",
              "2009-10-02 10:34:31 -0.000603  0.010400    0\n",
              "2009-10-05 12:55:39  0.013530  0.011719    1\n",
              "2009-10-06 09:31:29  0.000982  0.016259    0\n",
              "2009-10-06 11:16:28 -0.006791  0.017185    0"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 37
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "AVYl7ObOC56J",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "bins2 = labeling.get_bins(events2,close)"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "TcpA9n35wqe_",
        "colab_type": "code",
        "outputId": "2ae19db4-4d4f-4ad7-eef3-f654bbb59384",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 1000
        }
      },
      "source": [
        "bins2\n",
        "\n",
        "# with side\n",
        "# meta-labeling"
      ],
      "execution_count": 39,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>ret</th>\n",
              "      <th>trgt</th>\n",
              "      <th>bin</th>\n",
              "      <th>side</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>2009-10-02 09:32:42</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.010414</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-02 10:34:31</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.010400</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-05 12:55:39</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.011719</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-06 09:31:29</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.016259</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-06 11:16:28</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.017185</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-06 14:08:35</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.017471</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-07 11:04:15</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.015954</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-08 09:29:50</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.014741</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-12 09:43:45</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.012437</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-13 10:02:16</th>\n",
              "      <td>-0.018241</td>\n",
              "      <td>0.011074</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-14 09:34:13</th>\n",
              "      <td>0.004513</td>\n",
              "      <td>0.010597</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-14 15:04:11</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.010634</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-16 09:38:27</th>\n",
              "      <td>-0.002663</td>\n",
              "      <td>0.010277</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-19 10:28:55</th>\n",
              "      <td>0.001175</td>\n",
              "      <td>0.010475</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-22 14:17:14</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.010254</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-23 10:44:02</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.010212</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-23 11:22:52</th>\n",
              "      <td>-0.001244</td>\n",
              "      <td>0.010113</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-26 10:24:21</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.010046</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-26 15:08:07</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.010021</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-27 10:02:21</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.010398</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-27 12:18:51</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.010670</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-29 13:06:32</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.010090</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-30 09:58:03</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.012361</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-30 11:38:14</th>\n",
              "      <td>0.013549</td>\n",
              "      <td>0.012099</td>\n",
              "      <td>1</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-30 12:49:44</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.011894</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-02 09:54:04</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.013649</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-02 12:37:26</th>\n",
              "      <td>-0.001502</td>\n",
              "      <td>0.014020</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-02 12:53:12</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.013749</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-02 14:50:33</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.012509</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-03 14:02:53</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.010853</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>...</th>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 11:18:49</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.010568</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 11:56:55</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.011621</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 12:15:07</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.013061</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 13:20:13</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.013520</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 13:54:04</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.013013</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 15:12:52</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.010516</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 15:36:41</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.010180</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 15:55:00</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.011307</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-27 09:30:00</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.011859</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-27 09:48:37</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.010464</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-27 14:43:44</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.010930</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-28 10:28:33</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.011270</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-31 09:30:00</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.013854</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-31 10:58:46</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.011591</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-04 10:23:47</th>\n",
              "      <td>0.011254</td>\n",
              "      <td>0.014161</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-04 12:41:59</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.010130</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-07 10:36:22</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.013365</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-07 12:25:57</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.011640</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-22 11:56:00</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.013127</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-23 09:41:35</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.011577</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-23 11:26:41</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.011245</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-23 14:15:38</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.010252</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-03-25 09:51:16</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.010639</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-05-14 09:42:08</th>\n",
              "      <td>-0.003746</td>\n",
              "      <td>0.011580</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-05-14 11:59:27</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.013155</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-05-15 09:30:00</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.014566</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-05-15 10:38:24</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.013474</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-05-16 10:01:27</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.011151</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-05-17 09:30:00</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.010195</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-06-05 09:30:00</th>\n",
              "      <td>NaN</td>\n",
              "      <td>0.012501</td>\n",
              "      <td>0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "<p>1088 rows × 4 columns</p>\n",
              "</div>"
            ],
            "text/plain": [
              "                          ret      trgt  bin  side\n",
              "2009-10-02 09:32:42       NaN  0.010414    0   NaN\n",
              "2009-10-02 10:34:31       NaN  0.010400    0   NaN\n",
              "2009-10-05 12:55:39       NaN  0.011719    0   NaN\n",
              "2009-10-06 09:31:29       NaN  0.016259    0   NaN\n",
              "2009-10-06 11:16:28       NaN  0.017185    0   NaN\n",
              "2009-10-06 14:08:35       NaN  0.017471    0   NaN\n",
              "2009-10-07 11:04:15       NaN  0.015954    0   NaN\n",
              "2009-10-08 09:29:50       NaN  0.014741    0   NaN\n",
              "2009-10-12 09:43:45       NaN  0.012437    0   NaN\n",
              "2009-10-13 10:02:16 -0.018241  0.011074    0  -1.0\n",
              "2009-10-14 09:34:13  0.004513  0.010597    0   1.0\n",
              "2009-10-14 15:04:11       NaN  0.010634    0   NaN\n",
              "2009-10-16 09:38:27 -0.002663  0.010277    0  -1.0\n",
              "2009-10-19 10:28:55  0.001175  0.010475    0   1.0\n",
              "2009-10-22 14:17:14       NaN  0.010254    0   NaN\n",
              "2009-10-23 10:44:02       NaN  0.010212    0   NaN\n",
              "2009-10-23 11:22:52 -0.001244  0.010113    0  -1.0\n",
              "2009-10-26 10:24:21       NaN  0.010046    0   NaN\n",
              "2009-10-26 15:08:07       NaN  0.010021    0   NaN\n",
              "2009-10-27 10:02:21       NaN  0.010398    0   NaN\n",
              "2009-10-27 12:18:51       NaN  0.010670    0   NaN\n",
              "2009-10-29 13:06:32       NaN  0.010090    0   NaN\n",
              "2009-10-30 09:58:03       NaN  0.012361    0   NaN\n",
              "2009-10-30 11:38:14  0.013549  0.012099    1  -1.0\n",
              "2009-10-30 12:49:44       NaN  0.011894    0   NaN\n",
              "2009-11-02 09:54:04       NaN  0.013649    0   NaN\n",
              "2009-11-02 12:37:26 -0.001502  0.014020    0  -1.0\n",
              "2009-11-02 12:53:12       NaN  0.013749    0   NaN\n",
              "2009-11-02 14:50:33       NaN  0.012509    0   NaN\n",
              "2009-11-03 14:02:53       NaN  0.010853    0   NaN\n",
              "...                       ...       ...  ...   ...\n",
              "2018-12-26 11:18:49       NaN  0.010568    0   NaN\n",
              "2018-12-26 11:56:55       NaN  0.011621    0   NaN\n",
              "2018-12-26 12:15:07       NaN  0.013061    0   NaN\n",
              "2018-12-26 13:20:13       NaN  0.013520    0   NaN\n",
              "2018-12-26 13:54:04       NaN  0.013013    0   NaN\n",
              "2018-12-26 15:12:52       NaN  0.010516    0   NaN\n",
              "2018-12-26 15:36:41       NaN  0.010180    0   NaN\n",
              "2018-12-26 15:55:00       NaN  0.011307    0   NaN\n",
              "2018-12-27 09:30:00       NaN  0.011859    0   NaN\n",
              "2018-12-27 09:48:37       NaN  0.010464    0   NaN\n",
              "2018-12-27 14:43:44       NaN  0.010930    0   NaN\n",
              "2018-12-28 10:28:33       NaN  0.011270    0   NaN\n",
              "2018-12-31 09:30:00       NaN  0.013854    0   NaN\n",
              "2018-12-31 10:58:46       NaN  0.011591    0   NaN\n",
              "2019-01-04 10:23:47  0.011254  0.014161    0   1.0\n",
              "2019-01-04 12:41:59       NaN  0.010130    0   NaN\n",
              "2019-01-07 10:36:22       NaN  0.013365    0   NaN\n",
              "2019-01-07 12:25:57       NaN  0.011640    0   NaN\n",
              "2019-01-22 11:56:00       NaN  0.013127    0   NaN\n",
              "2019-01-23 09:41:35       NaN  0.011577    0   NaN\n",
              "2019-01-23 11:26:41       NaN  0.011245    0   NaN\n",
              "2019-01-23 14:15:38       NaN  0.010252    0   NaN\n",
              "2019-03-25 09:51:16       NaN  0.010639    0   NaN\n",
              "2019-05-14 09:42:08 -0.003746  0.011580    0   1.0\n",
              "2019-05-14 11:59:27       NaN  0.013155    0   NaN\n",
              "2019-05-15 09:30:00       NaN  0.014566    0   NaN\n",
              "2019-05-15 10:38:24       NaN  0.013474    0   NaN\n",
              "2019-05-16 10:01:27       NaN  0.011151    0   NaN\n",
              "2019-05-17 09:30:00       NaN  0.010195    0   NaN\n",
              "2019-06-05 09:30:00       NaN  0.012501    0   NaN\n",
              "\n",
              "[1088 rows x 4 columns]"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 39
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "5qecYBHVj-ZE",
        "colab_type": "code",
        "outputId": "408a0d10-8cad-4969-dbf3-6b3fd7e723c1",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 34
        }
      },
      "source": [
        "len(bins2)\n"
      ],
      "execution_count": 40,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "1088"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 40
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "p8gxjKcCWDp-",
        "colab_type": "code",
        "outputId": "07baaa50-26e1-44da-a69d-4cc9607b70f1",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 1000
        }
      },
      "source": [
        "bins2 = bins2.dropna()\n",
        "bins2"
      ],
      "execution_count": 41,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>ret</th>\n",
              "      <th>trgt</th>\n",
              "      <th>bin</th>\n",
              "      <th>side</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>2009-10-13 10:02:16</th>\n",
              "      <td>-0.018241</td>\n",
              "      <td>0.011074</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-14 09:34:13</th>\n",
              "      <td>0.004513</td>\n",
              "      <td>0.010597</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-16 09:38:27</th>\n",
              "      <td>-0.002663</td>\n",
              "      <td>0.010277</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-19 10:28:55</th>\n",
              "      <td>0.001175</td>\n",
              "      <td>0.010475</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-23 11:22:52</th>\n",
              "      <td>-0.001244</td>\n",
              "      <td>0.010113</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-30 11:38:14</th>\n",
              "      <td>0.013549</td>\n",
              "      <td>0.012099</td>\n",
              "      <td>1</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-02 12:37:26</th>\n",
              "      <td>-0.001502</td>\n",
              "      <td>0.014020</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-04 15:43:57</th>\n",
              "      <td>-0.012277</td>\n",
              "      <td>0.012348</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-23 09:30:00</th>\n",
              "      <td>-0.001700</td>\n",
              "      <td>0.010115</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-03 11:43:37</th>\n",
              "      <td>0.017162</td>\n",
              "      <td>0.010420</td>\n",
              "      <td>1</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-08 11:04:17</th>\n",
              "      <td>-0.008414</td>\n",
              "      <td>0.014650</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-10 13:21:57</th>\n",
              "      <td>0.003802</td>\n",
              "      <td>0.012773</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-11 12:18:26</th>\n",
              "      <td>-0.013287</td>\n",
              "      <td>0.012357</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-04-29 09:45:48</th>\n",
              "      <td>0.003937</td>\n",
              "      <td>0.010709</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-03 13:06:54</th>\n",
              "      <td>-0.012793</td>\n",
              "      <td>0.011547</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-04 09:29:48</th>\n",
              "      <td>0.012107</td>\n",
              "      <td>0.011889</td>\n",
              "      <td>1</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-07 10:24:27</th>\n",
              "      <td>-0.041067</td>\n",
              "      <td>0.040237</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-07 11:49:20</th>\n",
              "      <td>0.029202</td>\n",
              "      <td>0.037752</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-10 09:31:03</th>\n",
              "      <td>-0.003556</td>\n",
              "      <td>0.070974</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-10 15:53:13</th>\n",
              "      <td>-0.011382</td>\n",
              "      <td>0.061015</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-11 18:27:24</th>\n",
              "      <td>-0.017841</td>\n",
              "      <td>0.047244</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-13 15:35:23</th>\n",
              "      <td>0.016059</td>\n",
              "      <td>0.039635</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-20 09:30:41</th>\n",
              "      <td>0.034604</td>\n",
              "      <td>0.022056</td>\n",
              "      <td>1</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-20 15:46:21</th>\n",
              "      <td>0.025024</td>\n",
              "      <td>0.019780</td>\n",
              "      <td>1</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-21 11:17:33</th>\n",
              "      <td>0.003267</td>\n",
              "      <td>0.018748</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-24 15:52:54</th>\n",
              "      <td>0.030590</td>\n",
              "      <td>0.016996</td>\n",
              "      <td>1</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-25 15:04:11</th>\n",
              "      <td>0.022688</td>\n",
              "      <td>0.016831</td>\n",
              "      <td>1</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-26 15:36:44</th>\n",
              "      <td>-0.024230</td>\n",
              "      <td>0.024086</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-27 09:37:55</th>\n",
              "      <td>0.010081</td>\n",
              "      <td>0.023539</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-06-01 09:31:42</th>\n",
              "      <td>0.004043</td>\n",
              "      <td>0.020338</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>...</th>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2015-09-22 09:30:00</th>\n",
              "      <td>0.000470</td>\n",
              "      <td>0.010919</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2015-11-17 14:37:18</th>\n",
              "      <td>-0.008084</td>\n",
              "      <td>0.010786</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2015-12-16 09:33:53</th>\n",
              "      <td>0.002277</td>\n",
              "      <td>0.013216</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2015-12-24 09:30:00</th>\n",
              "      <td>0.006854</td>\n",
              "      <td>0.010327</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-01-06 09:30:00</th>\n",
              "      <td>0.019318</td>\n",
              "      <td>0.011989</td>\n",
              "      <td>1</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-01-14 10:29:43</th>\n",
              "      <td>0.012575</td>\n",
              "      <td>0.010495</td>\n",
              "      <td>1</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-01-19 15:28:43</th>\n",
              "      <td>-0.018160</td>\n",
              "      <td>0.010722</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-01-20 09:30:00</th>\n",
              "      <td>0.011375</td>\n",
              "      <td>0.010067</td>\n",
              "      <td>1</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-01-21 10:14:59</th>\n",
              "      <td>0.016960</td>\n",
              "      <td>0.013284</td>\n",
              "      <td>1</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-01-21 13:33:37</th>\n",
              "      <td>-0.014784</td>\n",
              "      <td>0.023555</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-02-01 09:43:20</th>\n",
              "      <td>0.009434</td>\n",
              "      <td>0.011524</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-02-02 09:30:00</th>\n",
              "      <td>0.010945</td>\n",
              "      <td>0.010542</td>\n",
              "      <td>1</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-02-03 09:30:00</th>\n",
              "      <td>-0.013420</td>\n",
              "      <td>0.012316</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-02-03 11:48:05</th>\n",
              "      <td>0.012419</td>\n",
              "      <td>0.010914</td>\n",
              "      <td>1</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-06-28 09:30:00</th>\n",
              "      <td>0.013302</td>\n",
              "      <td>0.012485</td>\n",
              "      <td>1</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-07-05 09:37:12</th>\n",
              "      <td>0.009394</td>\n",
              "      <td>0.013213</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-07-06 12:26:24</th>\n",
              "      <td>0.003211</td>\n",
              "      <td>0.013159</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-07-08 09:30:57</th>\n",
              "      <td>0.009335</td>\n",
              "      <td>0.010800</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-09-13 09:30:00</th>\n",
              "      <td>0.010658</td>\n",
              "      <td>0.010334</td>\n",
              "      <td>1</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-02-12 09:30:00</th>\n",
              "      <td>0.000361</td>\n",
              "      <td>0.016481</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-03-01 15:20:11</th>\n",
              "      <td>-0.011849</td>\n",
              "      <td>0.010557</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-03-07 09:30:00</th>\n",
              "      <td>-0.008062</td>\n",
              "      <td>0.010240</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-03-28 13:01:48</th>\n",
              "      <td>-0.010759</td>\n",
              "      <td>0.010533</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-04-04 09:30:00</th>\n",
              "      <td>-0.016839</td>\n",
              "      <td>0.016321</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-04-10 09:31:21</th>\n",
              "      <td>-0.003730</td>\n",
              "      <td>0.012755</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-04-10 12:26:12</th>\n",
              "      <td>-0.003907</td>\n",
              "      <td>0.010434</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-06-01 09:37:44</th>\n",
              "      <td>0.004014</td>\n",
              "      <td>0.011014</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-07 10:33:03</th>\n",
              "      <td>0.015604</td>\n",
              "      <td>0.013082</td>\n",
              "      <td>1</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-04 10:23:47</th>\n",
              "      <td>0.011254</td>\n",
              "      <td>0.014161</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-05-14 09:42:08</th>\n",
              "      <td>-0.003746</td>\n",
              "      <td>0.011580</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "<p>123 rows × 4 columns</p>\n",
              "</div>"
            ],
            "text/plain": [
              "                          ret      trgt  bin  side\n",
              "2009-10-13 10:02:16 -0.018241  0.011074    0  -1.0\n",
              "2009-10-14 09:34:13  0.004513  0.010597    0   1.0\n",
              "2009-10-16 09:38:27 -0.002663  0.010277    0  -1.0\n",
              "2009-10-19 10:28:55  0.001175  0.010475    0   1.0\n",
              "2009-10-23 11:22:52 -0.001244  0.010113    0  -1.0\n",
              "2009-10-30 11:38:14  0.013549  0.012099    1  -1.0\n",
              "2009-11-02 12:37:26 -0.001502  0.014020    0  -1.0\n",
              "2009-11-04 15:43:57 -0.012277  0.012348    0  -1.0\n",
              "2009-11-23 09:30:00 -0.001700  0.010115    0   1.0\n",
              "2010-02-03 11:43:37  0.017162  0.010420    1  -1.0\n",
              "2010-02-08 11:04:17 -0.008414  0.014650    0   1.0\n",
              "2010-02-10 13:21:57  0.003802  0.012773    0   1.0\n",
              "2010-02-11 12:18:26 -0.013287  0.012357    0   1.0\n",
              "2010-04-29 09:45:48  0.003937  0.010709    0   1.0\n",
              "2010-05-03 13:06:54 -0.012793  0.011547    0   1.0\n",
              "2010-05-04 09:29:48  0.012107  0.011889    1  -1.0\n",
              "2010-05-07 10:24:27 -0.041067  0.040237    0  -1.0\n",
              "2010-05-07 11:49:20  0.029202  0.037752    0   1.0\n",
              "2010-05-10 09:31:03 -0.003556  0.070974    0   1.0\n",
              "2010-05-10 15:53:13 -0.011382  0.061015    0   1.0\n",
              "2010-05-11 18:27:24 -0.017841  0.047244    0  -1.0\n",
              "2010-05-13 15:35:23  0.016059  0.039635    0  -1.0\n",
              "2010-05-20 09:30:41  0.034604  0.022056    1  -1.0\n",
              "2010-05-20 15:46:21  0.025024  0.019780    1  -1.0\n",
              "2010-05-21 11:17:33  0.003267  0.018748    0   1.0\n",
              "2010-05-24 15:52:54  0.030590  0.016996    1  -1.0\n",
              "2010-05-25 15:04:11  0.022688  0.016831    1   1.0\n",
              "2010-05-26 15:36:44 -0.024230  0.024086    0  -1.0\n",
              "2010-05-27 09:37:55  0.010081  0.023539    0   1.0\n",
              "2010-06-01 09:31:42  0.004043  0.020338    0  -1.0\n",
              "...                       ...       ...  ...   ...\n",
              "2015-09-22 09:30:00  0.000470  0.010919    0  -1.0\n",
              "2015-11-17 14:37:18 -0.008084  0.010786    0  -1.0\n",
              "2015-12-16 09:33:53  0.002277  0.013216    0   1.0\n",
              "2015-12-24 09:30:00  0.006854  0.010327    0  -1.0\n",
              "2016-01-06 09:30:00  0.019318  0.011989    1  -1.0\n",
              "2016-01-14 10:29:43  0.012575  0.010495    1   1.0\n",
              "2016-01-19 15:28:43 -0.018160  0.010722    0   1.0\n",
              "2016-01-20 09:30:00  0.011375  0.010067    1  -1.0\n",
              "2016-01-21 10:14:59  0.016960  0.013284    1   1.0\n",
              "2016-01-21 13:33:37 -0.014784  0.023555    0  -1.0\n",
              "2016-02-01 09:43:20  0.009434  0.011524    0  -1.0\n",
              "2016-02-02 09:30:00  0.010945  0.010542    1  -1.0\n",
              "2016-02-03 09:30:00 -0.013420  0.012316    0   1.0\n",
              "2016-02-03 11:48:05  0.012419  0.010914    1   1.0\n",
              "2016-06-28 09:30:00  0.013302  0.012485    1   1.0\n",
              "2016-07-05 09:37:12  0.009394  0.013213    0  -1.0\n",
              "2016-07-06 12:26:24  0.003211  0.013159    0   1.0\n",
              "2016-07-08 09:30:57  0.009335  0.010800    0   1.0\n",
              "2016-09-13 09:30:00  0.010658  0.010334    1  -1.0\n",
              "2018-02-12 09:30:00  0.000361  0.016481    0   1.0\n",
              "2018-03-01 15:20:11 -0.011849  0.010557    0   1.0\n",
              "2018-03-07 09:30:00 -0.008062  0.010240    0  -1.0\n",
              "2018-03-28 13:01:48 -0.010759  0.010533    0  -1.0\n",
              "2018-04-04 09:30:00 -0.016839  0.016321    0  -1.0\n",
              "2018-04-10 09:31:21 -0.003730  0.012755    0   1.0\n",
              "2018-04-10 12:26:12 -0.003907  0.010434    0  -1.0\n",
              "2018-06-01 09:37:44  0.004014  0.011014    0   1.0\n",
              "2018-12-07 10:33:03  0.015604  0.013082    1  -1.0\n",
              "2019-01-04 10:23:47  0.011254  0.014161    0   1.0\n",
              "2019-05-14 09:42:08 -0.003746  0.011580    0   1.0\n",
              "\n",
              "[123 rows x 4 columns]"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 41
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "HBETHoUrVuri",
        "colab_type": "text"
      },
      "source": [
        "# 3.2."
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "fUmTInwN7lPN",
        "colab_type": "code",
        "outputId": "d3e593fb-7725-4331-fc9a-dd7faecf4da3",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 204
        }
      },
      "source": [
        "#불필요한 레이블 drop\n",
        "\n",
        "events_droplabels = labeling.drop_labels(bins2, min_pct=0.075)\n",
        "events_droplabels.head()"
      ],
      "execution_count": 42,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>ret</th>\n",
              "      <th>trgt</th>\n",
              "      <th>bin</th>\n",
              "      <th>side</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>2009-10-13 10:02:16</th>\n",
              "      <td>-0.018241</td>\n",
              "      <td>0.011074</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-14 09:34:13</th>\n",
              "      <td>0.004513</td>\n",
              "      <td>0.010597</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-16 09:38:27</th>\n",
              "      <td>-0.002663</td>\n",
              "      <td>0.010277</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-19 10:28:55</th>\n",
              "      <td>0.001175</td>\n",
              "      <td>0.010475</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-23 11:22:52</th>\n",
              "      <td>-0.001244</td>\n",
              "      <td>0.010113</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "</div>"
            ],
            "text/plain": [
              "                          ret      trgt  bin  side\n",
              "2009-10-13 10:02:16 -0.018241  0.011074    0  -1.0\n",
              "2009-10-14 09:34:13  0.004513  0.010597    0   1.0\n",
              "2009-10-16 09:38:27 -0.002663  0.010277    0  -1.0\n",
              "2009-10-19 10:28:55  0.001175  0.010475    0   1.0\n",
              "2009-10-23 11:22:52 -0.001244  0.010113    0  -1.0"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 42
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "hcUPxbEn7lIp",
        "colab_type": "code",
        "outputId": "2f1a1903-5097-4e72-a598-301934dcc9b5",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 34
        }
      },
      "source": [
        "np.all(bins2 == events_droplabels)\n"
      ],
      "execution_count": 43,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "True"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 43
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "-ADsdGOqXgoD",
        "colab_type": "text"
      },
      "source": [
        "# 3.3."
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "fq3rajta9we4",
        "colab_type": "code",
        "outputId": "65c93bef-7ef3-4c8b-9536-d1022787eee5",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 204
        }
      },
      "source": [
        "# get 0 when vertical line being touched\n",
        "\n",
        "adjusted_bins = labeling.barrier_touched(bins)\n",
        "adjusted_bins.head()"
      ],
      "execution_count": 44,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>ret</th>\n",
              "      <th>trgt</th>\n",
              "      <th>bin</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>2009-10-02 09:32:42</th>\n",
              "      <td>0.010761</td>\n",
              "      <td>0.010414</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-02 10:34:31</th>\n",
              "      <td>-0.000603</td>\n",
              "      <td>0.010400</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-05 12:55:39</th>\n",
              "      <td>0.013530</td>\n",
              "      <td>0.011719</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-06 09:31:29</th>\n",
              "      <td>0.000982</td>\n",
              "      <td>0.016259</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-06 11:16:28</th>\n",
              "      <td>-0.006791</td>\n",
              "      <td>0.017185</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "</div>"
            ],
            "text/plain": [
              "                          ret      trgt  bin\n",
              "2009-10-02 09:32:42  0.010761  0.010414    1\n",
              "2009-10-02 10:34:31 -0.000603  0.010400    0\n",
              "2009-10-05 12:55:39  0.013530  0.011719    1\n",
              "2009-10-06 09:31:29  0.000982  0.016259    0\n",
              "2009-10-06 11:16:28 -0.006791  0.017185    0"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 44
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "r4NNjB4rY98k",
        "colab_type": "code",
        "outputId": "92a1319f-40d8-432d-e639-2c47af8d37bb",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 34
        }
      },
      "source": [
        "np.any(adjusted_bins['bin']==0)\n"
      ],
      "execution_count": 45,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "True"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 45
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "sWIA9oekZjjL",
        "colab_type": "text"
      },
      "source": [
        "# 3.4. 실전"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "ACvljA_PbBtO",
        "colab_type": "text"
      },
      "source": [
        "## (a)"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "nwOW2oGlZbsa",
        "colab_type": "code",
        "outputId": "93c69816-a4de-46ab-9146-96b2c68c62ca",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 442
        }
      },
      "source": [
        "# events2와 같이 메타레이블이나, pt_sl만 변경\n",
        "\n",
        "pt_sl_2 = [1,2]\n",
        "target = DailyVol\n",
        "\n",
        "\n",
        "\n",
        "events3 = labeling.get_events(close, t_events, pt_sl_2, target, min_ret=0.01, num_threads=1 , side_prediction = side)\n",
        "events3.head()"
      ],
      "execution_count": 46,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "/usr/local/lib/python3.6/dist-packages/mlfinlab/labeling/labeling.py:122: FutureWarning: \n",
            "Passing list-likes to .loc or [] with any missing label will raise\n",
            "KeyError in the future, you can use .reindex() as an alternative.\n",
            "\n",
            "See the documentation here:\n",
            "https://pandas.pydata.org/pandas-docs/stable/indexing.html#deprecate-loc-reindex-listlike\n",
            "  target = target.loc[t_events]\n",
            "/usr/local/lib/python3.6/dist-packages/mlfinlab/labeling/labeling.py:134: FutureWarning: \n",
            "Passing list-likes to .loc or [] with any missing label will raise\n",
            "KeyError in the future, you can use .reindex() as an alternative.\n",
            "\n",
            "See the documentation here:\n",
            "https://pandas.pydata.org/pandas-docs/stable/indexing.html#deprecate-loc-reindex-listlike\n",
            "  side_ = side_prediction.loc[target.index]\n"
          ],
          "name": "stderr"
        },
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>side</th>\n",
              "      <th>t1</th>\n",
              "      <th>trgt</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>2009-10-02 09:32:42</th>\n",
              "      <td>NaN</td>\n",
              "      <td>NaT</td>\n",
              "      <td>0.010414</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-02 10:34:31</th>\n",
              "      <td>NaN</td>\n",
              "      <td>NaT</td>\n",
              "      <td>0.010400</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-05 12:55:39</th>\n",
              "      <td>NaN</td>\n",
              "      <td>NaT</td>\n",
              "      <td>0.011719</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-06 09:31:29</th>\n",
              "      <td>NaN</td>\n",
              "      <td>NaT</td>\n",
              "      <td>0.016259</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-06 11:16:28</th>\n",
              "      <td>NaN</td>\n",
              "      <td>NaT</td>\n",
              "      <td>0.017185</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "</div>"
            ],
            "text/plain": [
              "                     side  t1      trgt\n",
              "2009-10-02 09:32:42   NaN NaT  0.010414\n",
              "2009-10-02 10:34:31   NaN NaT  0.010400\n",
              "2009-10-05 12:55:39   NaN NaT  0.011719\n",
              "2009-10-06 09:31:29   NaN NaT  0.016259\n",
              "2009-10-06 11:16:28   NaN NaT  0.017185"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 46
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "358rlSKAdW3b",
        "colab_type": "code",
        "outputId": "87411609-f459-4e24-e433-bfe9b7d6850f",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 1000
        }
      },
      "source": [
        "bins3 = labeling.get_bins(events3,close)\n",
        "bins3"
      ],
      "execution_count": 47,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>ret</th>\n",
              "      <th>trgt</th>\n",
              "      <th>bin</th>\n",
              "      <th>side</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>2009-10-13 10:02:16</th>\n",
              "      <td>-0.021772</td>\n",
              "      <td>0.011074</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-14 09:34:13</th>\n",
              "      <td>-0.028501</td>\n",
              "      <td>0.010597</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-16 09:38:27</th>\n",
              "      <td>0.010796</td>\n",
              "      <td>0.010277</td>\n",
              "      <td>1</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-19 10:28:55</th>\n",
              "      <td>-0.021039</td>\n",
              "      <td>0.010475</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-23 11:22:52</th>\n",
              "      <td>0.011539</td>\n",
              "      <td>0.010113</td>\n",
              "      <td>1</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-30 11:38:14</th>\n",
              "      <td>0.013549</td>\n",
              "      <td>0.012099</td>\n",
              "      <td>1</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-02 12:37:26</th>\n",
              "      <td>-0.027359</td>\n",
              "      <td>0.014020</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-04 15:43:57</th>\n",
              "      <td>-0.030751</td>\n",
              "      <td>0.012348</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-23 09:30:00</th>\n",
              "      <td>0.010391</td>\n",
              "      <td>0.010115</td>\n",
              "      <td>1</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-03 11:43:37</th>\n",
              "      <td>0.017162</td>\n",
              "      <td>0.010420</td>\n",
              "      <td>1</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-08 11:04:17</th>\n",
              "      <td>0.015916</td>\n",
              "      <td>0.014650</td>\n",
              "      <td>1</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-10 13:21:57</th>\n",
              "      <td>0.015246</td>\n",
              "      <td>0.012773</td>\n",
              "      <td>1</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-11 12:18:26</th>\n",
              "      <td>0.012787</td>\n",
              "      <td>0.012357</td>\n",
              "      <td>1</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-04-29 09:45:48</th>\n",
              "      <td>-0.021636</td>\n",
              "      <td>0.010709</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-03 13:06:54</th>\n",
              "      <td>-0.024107</td>\n",
              "      <td>0.011547</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-04 09:29:48</th>\n",
              "      <td>0.012107</td>\n",
              "      <td>0.011889</td>\n",
              "      <td>1</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-07 10:24:27</th>\n",
              "      <td>0.054545</td>\n",
              "      <td>0.040237</td>\n",
              "      <td>1</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-07 11:49:20</th>\n",
              "      <td>0.037801</td>\n",
              "      <td>0.037752</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-10 09:31:03</th>\n",
              "      <td>0.071111</td>\n",
              "      <td>0.070974</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-10 15:53:13</th>\n",
              "      <td>-0.123757</td>\n",
              "      <td>0.061015</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-11 18:27:24</th>\n",
              "      <td>0.050642</td>\n",
              "      <td>0.047244</td>\n",
              "      <td>1</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-13 15:35:23</th>\n",
              "      <td>0.042778</td>\n",
              "      <td>0.039635</td>\n",
              "      <td>1</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-20 09:30:41</th>\n",
              "      <td>0.034604</td>\n",
              "      <td>0.022056</td>\n",
              "      <td>1</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-20 15:46:21</th>\n",
              "      <td>0.025024</td>\n",
              "      <td>0.019780</td>\n",
              "      <td>1</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-21 11:17:33</th>\n",
              "      <td>0.022532</td>\n",
              "      <td>0.018748</td>\n",
              "      <td>1</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-24 15:52:54</th>\n",
              "      <td>0.030590</td>\n",
              "      <td>0.016996</td>\n",
              "      <td>1</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-25 15:04:11</th>\n",
              "      <td>0.022688</td>\n",
              "      <td>0.016831</td>\n",
              "      <td>1</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-26 15:36:44</th>\n",
              "      <td>0.027289</td>\n",
              "      <td>0.024086</td>\n",
              "      <td>1</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-27 09:37:55</th>\n",
              "      <td>0.023661</td>\n",
              "      <td>0.023539</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-06-01 09:31:42</th>\n",
              "      <td>0.021328</td>\n",
              "      <td>0.020338</td>\n",
              "      <td>1</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>...</th>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2015-09-22 09:30:00</th>\n",
              "      <td>0.011168</td>\n",
              "      <td>0.010919</td>\n",
              "      <td>1</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2015-11-17 14:37:18</th>\n",
              "      <td>-0.021377</td>\n",
              "      <td>0.010786</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2015-12-16 09:33:53</th>\n",
              "      <td>-0.026519</td>\n",
              "      <td>0.013216</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2015-12-24 09:30:00</th>\n",
              "      <td>0.010786</td>\n",
              "      <td>0.010327</td>\n",
              "      <td>1</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-01-06 09:30:00</th>\n",
              "      <td>0.019318</td>\n",
              "      <td>0.011989</td>\n",
              "      <td>1</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-01-14 10:29:43</th>\n",
              "      <td>0.012575</td>\n",
              "      <td>0.010495</td>\n",
              "      <td>1</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-01-19 15:28:43</th>\n",
              "      <td>-0.023364</td>\n",
              "      <td>0.010722</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-01-20 09:30:00</th>\n",
              "      <td>0.011375</td>\n",
              "      <td>0.010067</td>\n",
              "      <td>1</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-01-21 10:14:59</th>\n",
              "      <td>0.016960</td>\n",
              "      <td>0.013284</td>\n",
              "      <td>1</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-01-21 13:33:37</th>\n",
              "      <td>-0.049097</td>\n",
              "      <td>0.023555</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-02-01 09:43:20</th>\n",
              "      <td>0.012066</td>\n",
              "      <td>0.011524</td>\n",
              "      <td>1</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-02-02 09:30:00</th>\n",
              "      <td>0.010945</td>\n",
              "      <td>0.010542</td>\n",
              "      <td>1</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-02-03 09:30:00</th>\n",
              "      <td>0.013780</td>\n",
              "      <td>0.012316</td>\n",
              "      <td>1</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-02-03 11:48:05</th>\n",
              "      <td>0.012419</td>\n",
              "      <td>0.010914</td>\n",
              "      <td>1</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-06-28 09:30:00</th>\n",
              "      <td>0.013302</td>\n",
              "      <td>0.012485</td>\n",
              "      <td>1</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-07-05 09:37:12</th>\n",
              "      <td>-0.026097</td>\n",
              "      <td>0.013213</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-07-06 12:26:24</th>\n",
              "      <td>0.013450</td>\n",
              "      <td>0.013159</td>\n",
              "      <td>1</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-07-08 09:30:57</th>\n",
              "      <td>0.011465</td>\n",
              "      <td>0.010800</td>\n",
              "      <td>1</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-09-13 09:30:00</th>\n",
              "      <td>0.010658</td>\n",
              "      <td>0.010334</td>\n",
              "      <td>1</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-02-12 09:30:00</th>\n",
              "      <td>0.017489</td>\n",
              "      <td>0.016481</td>\n",
              "      <td>1</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-03-01 15:20:11</th>\n",
              "      <td>0.010871</td>\n",
              "      <td>0.010557</td>\n",
              "      <td>1</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-03-07 09:30:00</th>\n",
              "      <td>-0.020858</td>\n",
              "      <td>0.010240</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-03-28 13:01:48</th>\n",
              "      <td>0.011066</td>\n",
              "      <td>0.010533</td>\n",
              "      <td>1</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-04-04 09:30:00</th>\n",
              "      <td>-0.032351</td>\n",
              "      <td>0.016321</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-04-10 09:31:21</th>\n",
              "      <td>0.013095</td>\n",
              "      <td>0.012755</td>\n",
              "      <td>1</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-04-10 12:26:12</th>\n",
              "      <td>-0.021071</td>\n",
              "      <td>0.010434</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-06-01 09:37:44</th>\n",
              "      <td>0.011321</td>\n",
              "      <td>0.011014</td>\n",
              "      <td>1</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-07 10:33:03</th>\n",
              "      <td>0.015604</td>\n",
              "      <td>0.013082</td>\n",
              "      <td>1</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-04 10:23:47</th>\n",
              "      <td>0.015301</td>\n",
              "      <td>0.014161</td>\n",
              "      <td>1</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-05-14 09:42:08</th>\n",
              "      <td>0.013034</td>\n",
              "      <td>0.011580</td>\n",
              "      <td>1</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "<p>123 rows × 4 columns</p>\n",
              "</div>"
            ],
            "text/plain": [
              "                          ret      trgt  bin  side\n",
              "2009-10-13 10:02:16 -0.021772  0.011074    0  -1.0\n",
              "2009-10-14 09:34:13 -0.028501  0.010597    0   1.0\n",
              "2009-10-16 09:38:27  0.010796  0.010277    1  -1.0\n",
              "2009-10-19 10:28:55 -0.021039  0.010475    0   1.0\n",
              "2009-10-23 11:22:52  0.011539  0.010113    1  -1.0\n",
              "2009-10-30 11:38:14  0.013549  0.012099    1  -1.0\n",
              "2009-11-02 12:37:26 -0.027359  0.014020    0  -1.0\n",
              "2009-11-04 15:43:57 -0.030751  0.012348    0  -1.0\n",
              "2009-11-23 09:30:00  0.010391  0.010115    1   1.0\n",
              "2010-02-03 11:43:37  0.017162  0.010420    1  -1.0\n",
              "2010-02-08 11:04:17  0.015916  0.014650    1   1.0\n",
              "2010-02-10 13:21:57  0.015246  0.012773    1   1.0\n",
              "2010-02-11 12:18:26  0.012787  0.012357    1   1.0\n",
              "2010-04-29 09:45:48 -0.021636  0.010709    0   1.0\n",
              "2010-05-03 13:06:54 -0.024107  0.011547    0   1.0\n",
              "2010-05-04 09:29:48  0.012107  0.011889    1  -1.0\n",
              "2010-05-07 10:24:27  0.054545  0.040237    1  -1.0\n",
              "2010-05-07 11:49:20  0.037801  0.037752    0   1.0\n",
              "2010-05-10 09:31:03  0.071111  0.070974    0   1.0\n",
              "2010-05-10 15:53:13 -0.123757  0.061015    0   1.0\n",
              "2010-05-11 18:27:24  0.050642  0.047244    1  -1.0\n",
              "2010-05-13 15:35:23  0.042778  0.039635    1  -1.0\n",
              "2010-05-20 09:30:41  0.034604  0.022056    1  -1.0\n",
              "2010-05-20 15:46:21  0.025024  0.019780    1  -1.0\n",
              "2010-05-21 11:17:33  0.022532  0.018748    1   1.0\n",
              "2010-05-24 15:52:54  0.030590  0.016996    1  -1.0\n",
              "2010-05-25 15:04:11  0.022688  0.016831    1   1.0\n",
              "2010-05-26 15:36:44  0.027289  0.024086    1  -1.0\n",
              "2010-05-27 09:37:55  0.023661  0.023539    0   1.0\n",
              "2010-06-01 09:31:42  0.021328  0.020338    1  -1.0\n",
              "...                       ...       ...  ...   ...\n",
              "2015-09-22 09:30:00  0.011168  0.010919    1  -1.0\n",
              "2015-11-17 14:37:18 -0.021377  0.010786    0  -1.0\n",
              "2015-12-16 09:33:53 -0.026519  0.013216    0   1.0\n",
              "2015-12-24 09:30:00  0.010786  0.010327    1  -1.0\n",
              "2016-01-06 09:30:00  0.019318  0.011989    1  -1.0\n",
              "2016-01-14 10:29:43  0.012575  0.010495    1   1.0\n",
              "2016-01-19 15:28:43 -0.023364  0.010722    0   1.0\n",
              "2016-01-20 09:30:00  0.011375  0.010067    1  -1.0\n",
              "2016-01-21 10:14:59  0.016960  0.013284    1   1.0\n",
              "2016-01-21 13:33:37 -0.049097  0.023555    0  -1.0\n",
              "2016-02-01 09:43:20  0.012066  0.011524    1  -1.0\n",
              "2016-02-02 09:30:00  0.010945  0.010542    1  -1.0\n",
              "2016-02-03 09:30:00  0.013780  0.012316    1   1.0\n",
              "2016-02-03 11:48:05  0.012419  0.010914    1   1.0\n",
              "2016-06-28 09:30:00  0.013302  0.012485    1   1.0\n",
              "2016-07-05 09:37:12 -0.026097  0.013213    0  -1.0\n",
              "2016-07-06 12:26:24  0.013450  0.013159    1   1.0\n",
              "2016-07-08 09:30:57  0.011465  0.010800    1   1.0\n",
              "2016-09-13 09:30:00  0.010658  0.010334    1  -1.0\n",
              "2018-02-12 09:30:00  0.017489  0.016481    1   1.0\n",
              "2018-03-01 15:20:11  0.010871  0.010557    1   1.0\n",
              "2018-03-07 09:30:00 -0.020858  0.010240    0  -1.0\n",
              "2018-03-28 13:01:48  0.011066  0.010533    1  -1.0\n",
              "2018-04-04 09:30:00 -0.032351  0.016321    0  -1.0\n",
              "2018-04-10 09:31:21  0.013095  0.012755    1   1.0\n",
              "2018-04-10 12:26:12 -0.021071  0.010434    0  -1.0\n",
              "2018-06-01 09:37:44  0.011321  0.011014    1   1.0\n",
              "2018-12-07 10:33:03  0.015604  0.013082    1  -1.0\n",
              "2019-01-04 10:23:47  0.015301  0.014161    1   1.0\n",
              "2019-05-14 09:42:08  0.013034  0.011580    1   1.0\n",
              "\n",
              "[123 rows x 4 columns]"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 47
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "K-oPB3C3cYdd",
        "colab_type": "text"
      },
      "source": [
        "## (b) random forest"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "Q21Qc6fucC5Q",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "from sklearn.ensemble import RandomForestClassifier\n",
        "from sklearn.model_selection import train_test_split\n",
        "from sklearn.metrics import roc_curve, classification_report"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "HdFc-MFuQM82",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "# feature을 넣기\n",
        " # 1. 롤링 자기상관\n",
        "\n",
        "def returns(s):\n",
        "    arr = np.diff(np.log(s))\n",
        "    return (pd.Series(arr, index=s.index[1:]))\n",
        "\n",
        "def df_rolling_autocorr(df, window, lag=1):\n",
        "    \"\"\"Compute rolling column-wise autocorrelation for a DataFrame.\"\"\"\n",
        "\n",
        "    return (df.rolling(window=window)\n",
        "            .corr(df.shift(lag))) # could .dropna() here\n",
        "\n",
        "srl_corr = df_rolling_autocorr(returns(close), window=20).rename('srl_corr')\n",
        "\n"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "CblZhQ40QvyN",
        "colab_type": "code",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 1000
        },
        "outputId": "ef30cea1-12a3-4788-8c49-bf012a8763b7"
      },
      "source": [
        "# side와 일별변동성 추가하기\n",
        "\n",
        "features = (pd.DataFrame()\n",
        "            .assign(vol = events3.trgt)\n",
        "            .assign(side = side)\n",
        "            .assign(srl_corr = srl_corr)\n",
        "            .drop_duplicates()\n",
        "            .dropna())\n",
        "features"
      ],
      "execution_count": 73,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>vol</th>\n",
              "      <th>side</th>\n",
              "      <th>srl_corr</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>2009-10-13 10:02:16</th>\n",
              "      <td>0.011074</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.152978</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-14 09:34:13</th>\n",
              "      <td>0.010597</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.105152</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-16 09:38:27</th>\n",
              "      <td>0.010277</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.033346</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-19 10:28:55</th>\n",
              "      <td>0.010475</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.026261</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-23 11:22:52</th>\n",
              "      <td>0.010113</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.333561</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-30 11:38:14</th>\n",
              "      <td>0.012099</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.347701</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-02 12:37:26</th>\n",
              "      <td>0.014020</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.067175</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-04 15:43:57</th>\n",
              "      <td>0.012348</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.137498</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-23 09:30:00</th>\n",
              "      <td>0.010115</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.021819</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-03 11:43:37</th>\n",
              "      <td>0.010420</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.240872</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-08 11:04:17</th>\n",
              "      <td>0.014650</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.089479</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-10 13:21:57</th>\n",
              "      <td>0.012773</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.258550</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-11 12:18:26</th>\n",
              "      <td>0.012357</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.268868</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-04-29 09:45:48</th>\n",
              "      <td>0.010709</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.025992</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-03 13:06:54</th>\n",
              "      <td>0.011547</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.067979</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-04 09:29:48</th>\n",
              "      <td>0.011889</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.238356</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-07 10:24:27</th>\n",
              "      <td>0.040237</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.045917</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-07 11:49:20</th>\n",
              "      <td>0.037752</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.243402</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-10 09:31:03</th>\n",
              "      <td>0.070974</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.023713</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-10 15:53:13</th>\n",
              "      <td>0.061015</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.085302</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-11 18:27:24</th>\n",
              "      <td>0.047244</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.202334</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-13 15:35:23</th>\n",
              "      <td>0.039635</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.302756</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-20 09:30:41</th>\n",
              "      <td>0.022056</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.089340</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-20 15:46:21</th>\n",
              "      <td>0.019780</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.162264</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-21 11:17:33</th>\n",
              "      <td>0.018748</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.098205</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-24 15:52:54</th>\n",
              "      <td>0.016996</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.293727</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-25 15:04:11</th>\n",
              "      <td>0.016831</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.015639</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-26 15:36:44</th>\n",
              "      <td>0.024086</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.122834</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-27 09:37:55</th>\n",
              "      <td>0.023539</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.092828</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-06-01 09:31:42</th>\n",
              "      <td>0.020338</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.217503</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>...</th>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2015-09-22 09:30:00</th>\n",
              "      <td>0.010919</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.084249</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2015-11-17 14:37:18</th>\n",
              "      <td>0.010786</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.115483</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2015-12-16 09:33:53</th>\n",
              "      <td>0.013216</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.027630</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2015-12-24 09:30:00</th>\n",
              "      <td>0.010327</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.084556</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-01-06 09:30:00</th>\n",
              "      <td>0.011989</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.021932</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-01-14 10:29:43</th>\n",
              "      <td>0.010495</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.131606</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-01-19 15:28:43</th>\n",
              "      <td>0.010722</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.130746</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-01-20 09:30:00</th>\n",
              "      <td>0.010067</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.243170</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-01-21 10:14:59</th>\n",
              "      <td>0.013284</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.109173</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-01-21 13:33:37</th>\n",
              "      <td>0.023555</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.138217</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-02-01 09:43:20</th>\n",
              "      <td>0.011524</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.146087</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-02-02 09:30:00</th>\n",
              "      <td>0.010542</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.447127</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-02-03 09:30:00</th>\n",
              "      <td>0.012316</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.162225</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-02-03 11:48:05</th>\n",
              "      <td>0.010914</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.010057</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-06-28 09:30:00</th>\n",
              "      <td>0.012485</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.202659</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-07-05 09:37:12</th>\n",
              "      <td>0.013213</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.260048</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-07-06 12:26:24</th>\n",
              "      <td>0.013159</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.400973</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-07-08 09:30:57</th>\n",
              "      <td>0.010800</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.060808</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-09-13 09:30:00</th>\n",
              "      <td>0.010334</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.229546</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-02-12 09:30:00</th>\n",
              "      <td>0.016481</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.271472</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-03-01 15:20:11</th>\n",
              "      <td>0.010557</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.129719</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-03-07 09:30:00</th>\n",
              "      <td>0.010240</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.039989</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-03-28 13:01:48</th>\n",
              "      <td>0.010533</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.246255</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-04-04 09:30:00</th>\n",
              "      <td>0.016321</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.243517</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-04-10 09:31:21</th>\n",
              "      <td>0.012755</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.048121</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-04-10 12:26:12</th>\n",
              "      <td>0.010434</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.271854</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-06-01 09:37:44</th>\n",
              "      <td>0.011014</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.026442</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-07 10:33:03</th>\n",
              "      <td>0.013082</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.420312</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-04 10:23:47</th>\n",
              "      <td>0.014161</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.045968</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-05-14 09:42:08</th>\n",
              "      <td>0.011580</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.004699</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "<p>123 rows × 3 columns</p>\n",
              "</div>"
            ],
            "text/plain": [
              "                          vol  side  srl_corr\n",
              "2009-10-13 10:02:16  0.011074  -1.0 -0.152978\n",
              "2009-10-14 09:34:13  0.010597   1.0 -0.105152\n",
              "2009-10-16 09:38:27  0.010277  -1.0 -0.033346\n",
              "2009-10-19 10:28:55  0.010475   1.0 -0.026261\n",
              "2009-10-23 11:22:52  0.010113  -1.0  0.333561\n",
              "2009-10-30 11:38:14  0.012099  -1.0 -0.347701\n",
              "2009-11-02 12:37:26  0.014020  -1.0 -0.067175\n",
              "2009-11-04 15:43:57  0.012348  -1.0  0.137498\n",
              "2009-11-23 09:30:00  0.010115   1.0 -0.021819\n",
              "2010-02-03 11:43:37  0.010420  -1.0  0.240872\n",
              "2010-02-08 11:04:17  0.014650   1.0  0.089479\n",
              "2010-02-10 13:21:57  0.012773   1.0 -0.258550\n",
              "2010-02-11 12:18:26  0.012357   1.0 -0.268868\n",
              "2010-04-29 09:45:48  0.010709   1.0 -0.025992\n",
              "2010-05-03 13:06:54  0.011547   1.0 -0.067979\n",
              "2010-05-04 09:29:48  0.011889  -1.0  0.238356\n",
              "2010-05-07 10:24:27  0.040237  -1.0 -0.045917\n",
              "2010-05-07 11:49:20  0.037752   1.0 -0.243402\n",
              "2010-05-10 09:31:03  0.070974   1.0  0.023713\n",
              "2010-05-10 15:53:13  0.061015   1.0 -0.085302\n",
              "2010-05-11 18:27:24  0.047244  -1.0  0.202334\n",
              "2010-05-13 15:35:23  0.039635  -1.0 -0.302756\n",
              "2010-05-20 09:30:41  0.022056  -1.0  0.089340\n",
              "2010-05-20 15:46:21  0.019780  -1.0 -0.162264\n",
              "2010-05-21 11:17:33  0.018748   1.0  0.098205\n",
              "2010-05-24 15:52:54  0.016996  -1.0 -0.293727\n",
              "2010-05-25 15:04:11  0.016831   1.0 -0.015639\n",
              "2010-05-26 15:36:44  0.024086  -1.0 -0.122834\n",
              "2010-05-27 09:37:55  0.023539   1.0 -0.092828\n",
              "2010-06-01 09:31:42  0.020338  -1.0 -0.217503\n",
              "...                       ...   ...       ...\n",
              "2015-09-22 09:30:00  0.010919  -1.0 -0.084249\n",
              "2015-11-17 14:37:18  0.010786  -1.0  0.115483\n",
              "2015-12-16 09:33:53  0.013216   1.0 -0.027630\n",
              "2015-12-24 09:30:00  0.010327  -1.0 -0.084556\n",
              "2016-01-06 09:30:00  0.011989  -1.0 -0.021932\n",
              "2016-01-14 10:29:43  0.010495   1.0  0.131606\n",
              "2016-01-19 15:28:43  0.010722   1.0  0.130746\n",
              "2016-01-20 09:30:00  0.010067  -1.0  0.243170\n",
              "2016-01-21 10:14:59  0.013284   1.0  0.109173\n",
              "2016-01-21 13:33:37  0.023555  -1.0 -0.138217\n",
              "2016-02-01 09:43:20  0.011524  -1.0 -0.146087\n",
              "2016-02-02 09:30:00  0.010542  -1.0  0.447127\n",
              "2016-02-03 09:30:00  0.012316   1.0 -0.162225\n",
              "2016-02-03 11:48:05  0.010914   1.0  0.010057\n",
              "2016-06-28 09:30:00  0.012485   1.0 -0.202659\n",
              "2016-07-05 09:37:12  0.013213  -1.0  0.260048\n",
              "2016-07-06 12:26:24  0.013159   1.0  0.400973\n",
              "2016-07-08 09:30:57  0.010800   1.0  0.060808\n",
              "2016-09-13 09:30:00  0.010334  -1.0 -0.229546\n",
              "2018-02-12 09:30:00  0.016481   1.0  0.271472\n",
              "2018-03-01 15:20:11  0.010557   1.0  0.129719\n",
              "2018-03-07 09:30:00  0.010240  -1.0  0.039989\n",
              "2018-03-28 13:01:48  0.010533  -1.0  0.246255\n",
              "2018-04-04 09:30:00  0.016321  -1.0  0.243517\n",
              "2018-04-10 09:31:21  0.012755   1.0  0.048121\n",
              "2018-04-10 12:26:12  0.010434  -1.0  0.271854\n",
              "2018-06-01 09:37:44  0.011014   1.0  0.026442\n",
              "2018-12-07 10:33:03  0.013082  -1.0  0.420312\n",
              "2019-01-04 10:23:47  0.014161   1.0 -0.045968\n",
              "2019-05-14 09:42:08  0.011580   1.0 -0.004699\n",
              "\n",
              "[123 rows x 3 columns]"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 73
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "XpJAMIuFRtZs",
        "colab_type": "code",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 1000
        },
        "outputId": "d4d4b3b9-da60-4381-915e-3ad867f54040"
      },
      "source": [
        "Xy = (pd.merge_asof(features, bins3.bin, \n",
        "                    left_index=True, right_index=True, \n",
        "                    direction='forward').dropna())\n",
        "Xy"
      ],
      "execution_count": 75,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>vol</th>\n",
              "      <th>side</th>\n",
              "      <th>srl_corr</th>\n",
              "      <th>bin</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>2009-10-13 10:02:16</th>\n",
              "      <td>0.011074</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.152978</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-14 09:34:13</th>\n",
              "      <td>0.010597</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.105152</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-16 09:38:27</th>\n",
              "      <td>0.010277</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.033346</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-19 10:28:55</th>\n",
              "      <td>0.010475</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.026261</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-23 11:22:52</th>\n",
              "      <td>0.010113</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.333561</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-30 11:38:14</th>\n",
              "      <td>0.012099</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.347701</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-02 12:37:26</th>\n",
              "      <td>0.014020</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.067175</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-04 15:43:57</th>\n",
              "      <td>0.012348</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.137498</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-23 09:30:00</th>\n",
              "      <td>0.010115</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.021819</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-03 11:43:37</th>\n",
              "      <td>0.010420</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.240872</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-08 11:04:17</th>\n",
              "      <td>0.014650</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.089479</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-10 13:21:57</th>\n",
              "      <td>0.012773</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.258550</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-11 12:18:26</th>\n",
              "      <td>0.012357</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.268868</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-04-29 09:45:48</th>\n",
              "      <td>0.010709</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.025992</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-03 13:06:54</th>\n",
              "      <td>0.011547</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.067979</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-04 09:29:48</th>\n",
              "      <td>0.011889</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.238356</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-07 10:24:27</th>\n",
              "      <td>0.040237</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.045917</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-07 11:49:20</th>\n",
              "      <td>0.037752</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.243402</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-10 09:31:03</th>\n",
              "      <td>0.070974</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.023713</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-10 15:53:13</th>\n",
              "      <td>0.061015</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.085302</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-11 18:27:24</th>\n",
              "      <td>0.047244</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.202334</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-13 15:35:23</th>\n",
              "      <td>0.039635</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.302756</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-20 09:30:41</th>\n",
              "      <td>0.022056</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.089340</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-20 15:46:21</th>\n",
              "      <td>0.019780</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.162264</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-21 11:17:33</th>\n",
              "      <td>0.018748</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.098205</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-24 15:52:54</th>\n",
              "      <td>0.016996</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.293727</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-25 15:04:11</th>\n",
              "      <td>0.016831</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.015639</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-26 15:36:44</th>\n",
              "      <td>0.024086</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.122834</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-27 09:37:55</th>\n",
              "      <td>0.023539</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.092828</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-06-01 09:31:42</th>\n",
              "      <td>0.020338</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.217503</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>...</th>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2015-09-22 09:30:00</th>\n",
              "      <td>0.010919</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.084249</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2015-11-17 14:37:18</th>\n",
              "      <td>0.010786</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.115483</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2015-12-16 09:33:53</th>\n",
              "      <td>0.013216</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.027630</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2015-12-24 09:30:00</th>\n",
              "      <td>0.010327</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.084556</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-01-06 09:30:00</th>\n",
              "      <td>0.011989</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.021932</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-01-14 10:29:43</th>\n",
              "      <td>0.010495</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.131606</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-01-19 15:28:43</th>\n",
              "      <td>0.010722</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.130746</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-01-20 09:30:00</th>\n",
              "      <td>0.010067</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.243170</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-01-21 10:14:59</th>\n",
              "      <td>0.013284</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.109173</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-01-21 13:33:37</th>\n",
              "      <td>0.023555</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.138217</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-02-01 09:43:20</th>\n",
              "      <td>0.011524</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.146087</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-02-02 09:30:00</th>\n",
              "      <td>0.010542</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.447127</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-02-03 09:30:00</th>\n",
              "      <td>0.012316</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.162225</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-02-03 11:48:05</th>\n",
              "      <td>0.010914</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.010057</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-06-28 09:30:00</th>\n",
              "      <td>0.012485</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.202659</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-07-05 09:37:12</th>\n",
              "      <td>0.013213</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.260048</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-07-06 12:26:24</th>\n",
              "      <td>0.013159</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.400973</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-07-08 09:30:57</th>\n",
              "      <td>0.010800</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.060808</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-09-13 09:30:00</th>\n",
              "      <td>0.010334</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.229546</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-02-12 09:30:00</th>\n",
              "      <td>0.016481</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.271472</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-03-01 15:20:11</th>\n",
              "      <td>0.010557</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.129719</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-03-07 09:30:00</th>\n",
              "      <td>0.010240</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.039989</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-03-28 13:01:48</th>\n",
              "      <td>0.010533</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.246255</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-04-04 09:30:00</th>\n",
              "      <td>0.016321</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.243517</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-04-10 09:31:21</th>\n",
              "      <td>0.012755</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.048121</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-04-10 12:26:12</th>\n",
              "      <td>0.010434</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.271854</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-06-01 09:37:44</th>\n",
              "      <td>0.011014</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.026442</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-07 10:33:03</th>\n",
              "      <td>0.013082</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.420312</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-04 10:23:47</th>\n",
              "      <td>0.014161</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.045968</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-05-14 09:42:08</th>\n",
              "      <td>0.011580</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.004699</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "<p>123 rows × 4 columns</p>\n",
              "</div>"
            ],
            "text/plain": [
              "                          vol  side  srl_corr  bin\n",
              "2009-10-13 10:02:16  0.011074  -1.0 -0.152978    0\n",
              "2009-10-14 09:34:13  0.010597   1.0 -0.105152    0\n",
              "2009-10-16 09:38:27  0.010277  -1.0 -0.033346    1\n",
              "2009-10-19 10:28:55  0.010475   1.0 -0.026261    0\n",
              "2009-10-23 11:22:52  0.010113  -1.0  0.333561    1\n",
              "2009-10-30 11:38:14  0.012099  -1.0 -0.347701    1\n",
              "2009-11-02 12:37:26  0.014020  -1.0 -0.067175    0\n",
              "2009-11-04 15:43:57  0.012348  -1.0  0.137498    0\n",
              "2009-11-23 09:30:00  0.010115   1.0 -0.021819    1\n",
              "2010-02-03 11:43:37  0.010420  -1.0  0.240872    1\n",
              "2010-02-08 11:04:17  0.014650   1.0  0.089479    1\n",
              "2010-02-10 13:21:57  0.012773   1.0 -0.258550    1\n",
              "2010-02-11 12:18:26  0.012357   1.0 -0.268868    1\n",
              "2010-04-29 09:45:48  0.010709   1.0 -0.025992    0\n",
              "2010-05-03 13:06:54  0.011547   1.0 -0.067979    0\n",
              "2010-05-04 09:29:48  0.011889  -1.0  0.238356    1\n",
              "2010-05-07 10:24:27  0.040237  -1.0 -0.045917    1\n",
              "2010-05-07 11:49:20  0.037752   1.0 -0.243402    0\n",
              "2010-05-10 09:31:03  0.070974   1.0  0.023713    0\n",
              "2010-05-10 15:53:13  0.061015   1.0 -0.085302    0\n",
              "2010-05-11 18:27:24  0.047244  -1.0  0.202334    1\n",
              "2010-05-13 15:35:23  0.039635  -1.0 -0.302756    1\n",
              "2010-05-20 09:30:41  0.022056  -1.0  0.089340    1\n",
              "2010-05-20 15:46:21  0.019780  -1.0 -0.162264    1\n",
              "2010-05-21 11:17:33  0.018748   1.0  0.098205    1\n",
              "2010-05-24 15:52:54  0.016996  -1.0 -0.293727    1\n",
              "2010-05-25 15:04:11  0.016831   1.0 -0.015639    1\n",
              "2010-05-26 15:36:44  0.024086  -1.0 -0.122834    1\n",
              "2010-05-27 09:37:55  0.023539   1.0 -0.092828    0\n",
              "2010-06-01 09:31:42  0.020338  -1.0 -0.217503    1\n",
              "...                       ...   ...       ...  ...\n",
              "2015-09-22 09:30:00  0.010919  -1.0 -0.084249    1\n",
              "2015-11-17 14:37:18  0.010786  -1.0  0.115483    0\n",
              "2015-12-16 09:33:53  0.013216   1.0 -0.027630    0\n",
              "2015-12-24 09:30:00  0.010327  -1.0 -0.084556    1\n",
              "2016-01-06 09:30:00  0.011989  -1.0 -0.021932    1\n",
              "2016-01-14 10:29:43  0.010495   1.0  0.131606    1\n",
              "2016-01-19 15:28:43  0.010722   1.0  0.130746    0\n",
              "2016-01-20 09:30:00  0.010067  -1.0  0.243170    1\n",
              "2016-01-21 10:14:59  0.013284   1.0  0.109173    1\n",
              "2016-01-21 13:33:37  0.023555  -1.0 -0.138217    0\n",
              "2016-02-01 09:43:20  0.011524  -1.0 -0.146087    1\n",
              "2016-02-02 09:30:00  0.010542  -1.0  0.447127    1\n",
              "2016-02-03 09:30:00  0.012316   1.0 -0.162225    1\n",
              "2016-02-03 11:48:05  0.010914   1.0  0.010057    1\n",
              "2016-06-28 09:30:00  0.012485   1.0 -0.202659    1\n",
              "2016-07-05 09:37:12  0.013213  -1.0  0.260048    0\n",
              "2016-07-06 12:26:24  0.013159   1.0  0.400973    1\n",
              "2016-07-08 09:30:57  0.010800   1.0  0.060808    1\n",
              "2016-09-13 09:30:00  0.010334  -1.0 -0.229546    1\n",
              "2018-02-12 09:30:00  0.016481   1.0  0.271472    1\n",
              "2018-03-01 15:20:11  0.010557   1.0  0.129719    1\n",
              "2018-03-07 09:30:00  0.010240  -1.0  0.039989    0\n",
              "2018-03-28 13:01:48  0.010533  -1.0  0.246255    1\n",
              "2018-04-04 09:30:00  0.016321  -1.0  0.243517    0\n",
              "2018-04-10 09:31:21  0.012755   1.0  0.048121    1\n",
              "2018-04-10 12:26:12  0.010434  -1.0  0.271854    0\n",
              "2018-06-01 09:37:44  0.011014   1.0  0.026442    1\n",
              "2018-12-07 10:33:03  0.013082  -1.0  0.420312    1\n",
              "2019-01-04 10:23:47  0.014161   1.0 -0.045968    1\n",
              "2019-05-14 09:42:08  0.011580   1.0 -0.004699    1\n",
              "\n",
              "[123 rows x 4 columns]"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 75
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "sYzG7oAaRfJE",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "# X는 side, volatility, serial correlation\n",
        "# y는 bin (레이블)\n",
        "\n",
        "X = Xy.drop('bin',axis=1).values\n",
        "y = bins3.bin.values\n",
        "\n",
        "#train test split\n",
        "\n",
        "X_train, X_test, y_train, y_test = train_test_split(X, y,test_size=0.5, shuffle=False)"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "41NtEVVfR5Ac",
        "colab_type": "code",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 139
        },
        "outputId": "21a7121b-6140-476b-8014-580760cf35dc"
      },
      "source": [
        "# Random Forest 실행\n",
        "rf = RandomForestClassifier()\n",
        "rf.fit(X_train, y_train)\n",
        "\n",
        " # best parameter 정하기\n",
        "\n",
        "from sklearn.model_selection import GridSearchCV\n",
        "param_grid = {'max_depth':[2,3,4,5,6,7]}\n",
        "grid = GridSearchCV(rf, param_grid)\n",
        "best_rf = grid.fit(X_train, y_train)\n",
        "\n",
        "\n",
        "# 예측값\n",
        "\n",
        "yfit_rf = best_rf.predict(X_test)"
      ],
      "execution_count": 111,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "/usr/local/lib/python3.6/dist-packages/sklearn/ensemble/forest.py:245: FutureWarning: The default value of n_estimators will change from 10 in version 0.20 to 100 in 0.22.\n",
            "  \"10 in version 0.20 to 100 in 0.22.\", FutureWarning)\n",
            "/usr/local/lib/python3.6/dist-packages/sklearn/model_selection/_split.py:1978: FutureWarning: The default value of cv will change from 3 to 5 in version 0.22. Specify it explicitly to silence this warning.\n",
            "  warnings.warn(CV_WARNING, FutureWarning)\n",
            "/usr/local/lib/python3.6/dist-packages/sklearn/model_selection/_search.py:814: DeprecationWarning: The default of the `iid` parameter will change from True to False in version 0.22 and will be removed in 0.24. This will change numeric results when test-set sizes are unequal.\n",
            "  DeprecationWarning)\n"
          ],
          "name": "stderr"
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "vlUUcfJeSSNj",
        "colab_type": "code",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 34
        },
        "outputId": "099bd8c5-9bd3-4b4f-b170-d9d7703d8b72"
      },
      "source": [
        "# 평가\n",
        "from sklearn.metrics import accuracy_score\n",
        "from sklearn.metrics import confusion_matrix\n",
        "\n",
        "accuracy_score(y_test, yfit_rf)\n",
        "#정확도 점수"
      ],
      "execution_count": 112,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "0.5645161290322581"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 112
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "Ok9KAIVxSYMh",
        "colab_type": "code",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 291
        },
        "outputId": "9d079d81-0987-4f7b-c580-e3eb066ddfa8"
      },
      "source": [
        "mat = confusion_matrix(y_test, yfit_rf)\n",
        "sns.heatmap(mat , annot=True)\n",
        "plt.xlabel('predicted label')\n",
        "plt.ylabel('true label');"
      ],
      "execution_count": 113,
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "image/png": "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\nrkJggg==\n",
            "text/plain": [
              "<Figure size 432x288 with 2 Axes>"
            ]
          },
          "metadata": {
            "tags": []
          }
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "eCO5jMHLSiVP",
        "colab_type": "code",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 170
        },
        "outputId": "9e7c6ce2-92e3-4c66-8a41-74ee696b8569"
      },
      "source": [
        "print(classification_report(y_test, yfit_rf))"
      ],
      "execution_count": 114,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "              precision    recall  f1-score   support\n",
            "\n",
            "           0       0.22      0.09      0.13        22\n",
            "           1       0.62      0.82      0.71        40\n",
            "\n",
            "    accuracy                           0.56        62\n",
            "   macro avg       0.42      0.46      0.42        62\n",
            "weighted avg       0.48      0.56      0.50        62\n",
            "\n"
          ],
          "name": "stdout"
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "3eXfCOh8SoLp",
        "colab_type": "code",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 34
        },
        "outputId": "e65b126f-d9fa-438a-84b2-dbd7a8394ed4"
      },
      "source": [
        "#Gradient Boost\n",
        "from sklearn.ensemble import GradientBoostingClassifier\n",
        "\n",
        "gbc = GradientBoostingClassifier( n_estimators=120, max_depth=2)\n",
        "gbc.fit(X_train, y_train)\n",
        "yfit_gbc = gbc.predict(X_test)\n",
        "\n",
        "accuracy_score(y_test, yfit_gbc)"
      ],
      "execution_count": 115,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "0.5"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 115
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "jc0uX8RFSn8K",
        "colab_type": "code",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 291
        },
        "outputId": "cbd3c9a7-3c0b-4b6f-cb1e-0048f31ee80c"
      },
      "source": [
        "mat = confusion_matrix(y_test, yfit_gbc)\n",
        "sns.heatmap(mat , annot=True)\n",
        "plt.xlabel('predicted label')\n",
        "plt.ylabel('true label');"
      ],
      "execution_count": 116,
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "image/png": "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\ngPwD8oMAAAAASUVORK5CYII=\n",
            "text/plain": [
              "<Figure size 432x288 with 2 Axes>"
            ]
          },
          "metadata": {
            "tags": []
          }
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "1bFy5RgnS0GR",
        "colab_type": "code",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 170
        },
        "outputId": "617536de-030c-4189-daa2-4a57df67c078"
      },
      "source": [
        "print(classification_report(y_test, yfit_gbc))"
      ],
      "execution_count": 117,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "              precision    recall  f1-score   support\n",
            "\n",
            "           0       0.30      0.32      0.31        22\n",
            "           1       0.62      0.60      0.61        40\n",
            "\n",
            "    accuracy                           0.50        62\n",
            "   macro avg       0.46      0.46      0.46        62\n",
            "weighted avg       0.51      0.50      0.50        62\n",
            "\n"
          ],
          "name": "stdout"
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "NyIzAi0KTKTf",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        ""
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "I6okgrJTTKYU",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        ""
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "HosEmMoPkd1a",
        "colab_type": "text"
      },
      "source": [
        "#  3.5."
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "r9ApPrIIpdmv",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "#볼린저 밴드로 Side 생성\n",
        "\n",
        "def bbands(price, window=None, width=None, numsd=None):\n",
        "    \"\"\" returns average, upper band, and lower band\"\"\"\n",
        "    ave = price.rolling(window).mean()\n",
        "    sd = price.rolling(window).std(ddof=0)\n",
        "    if width:\n",
        "        upband = ave * (1+width)\n",
        "        dnband = ave * (1-width)\n",
        "        return price, np.round(ave,3), np.round(upband,3), np.round(dnband,3)        \n",
        "    if numsd:\n",
        "        upband = ave + (sd*numsd)\n",
        "        dnband = ave - (sd*numsd)\n",
        "        return price, np.round(ave,3), np.round(upband,3), np.round(dnband,3)"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "WHO3vrewpgBD",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "window=20\n",
        "bb_df = pd.DataFrame()\n",
        "bb_df['price'],bb_df['ave'],bb_df['upper'],bb_df['lower']=bbands(close, window=window, numsd=1)\n",
        "bb_df.dropna(inplace=True)"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "sEXhLADApi_G",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "def get_up_cross(df, col):\n",
        "    # col is price column\n",
        "    crit1 = df[col].shift(1) < df.upper.shift(1)  \n",
        "    crit2 = df[col] > df.upper\n",
        "    return df[col][(crit1) & (crit2)]\n",
        "\n",
        "def get_down_cross(df, col):\n",
        "    # col is price column    \n",
        "    crit1 = df[col].shift(1) > df.lower.shift(1) \n",
        "    crit2 = df[col] < df.lower\n",
        "    return df[col][(crit1) & (crit2)]\n",
        "\n",
        "bb_down = get_down_cross(bb_df, 'price')\n",
        "bb_up = get_up_cross(bb_df, 'price')"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "SpEcJ5M-pzxd",
        "colab_type": "code",
        "outputId": "fe85d18b-2e78-4568-c343-56d0e953a106",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 1000
        }
      },
      "source": [
        "bb_side_up = pd.Series(-1, index=bb_up.index) # sell on up cross for mean reversion\n",
        "bb_side_down = pd.Series(1, index=bb_down.index) # buy on down cross for mean reversion\n",
        "\n",
        "side2 = pd.concat([bb_side_up,bb_side_down]).sort_index()\n",
        "side2"
      ],
      "execution_count": 121,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "date_time\n",
              "2009-09-28 14:28:41   -1\n",
              "2009-09-28 15:34:40   -1\n",
              "2009-09-29 09:27:39   -1\n",
              "2009-09-29 10:31:39   -1\n",
              "2009-09-29 13:30:07   -1\n",
              "2009-09-30 09:44:47    1\n",
              "2009-09-30 15:05:38    1\n",
              "2009-10-01 09:30:07    1\n",
              "2009-10-02 09:32:42    1\n",
              "2009-10-02 15:54:20    1\n",
              "2009-10-05 10:09:51   -1\n",
              "2009-10-07 15:41:33   -1\n",
              "2009-10-09 15:15:22   -1\n",
              "2009-10-13 10:02:16    1\n",
              "2009-10-14 09:34:13   -1\n",
              "2009-10-15 14:54:33   -1\n",
              "2009-10-16 09:38:27    1\n",
              "2009-10-19 11:35:03   -1\n",
              "2009-10-20 09:30:12   -1\n",
              "2009-10-20 11:48:54    1\n",
              "2009-10-21 15:30:21    1\n",
              "2009-10-22 14:41:20   -1\n",
              "2009-10-23 11:22:52    1\n",
              "2009-10-23 13:40:54    1\n",
              "2009-10-26 11:30:36    1\n",
              "2009-10-27 09:42:46    1\n",
              "2009-10-27 10:02:21    1\n",
              "2009-10-27 13:08:57    1\n",
              "2009-10-27 15:34:39    1\n",
              "2009-10-28 09:36:43    1\n",
              "                      ..\n",
              "2019-06-14 15:18:27   -1\n",
              "2019-06-17 09:30:00    1\n",
              "2019-06-17 15:07:19    1\n",
              "2019-06-18 09:39:43   -1\n",
              "2019-06-18 15:44:01    1\n",
              "2019-06-18 15:55:10    1\n",
              "2019-06-19 09:57:29   -1\n",
              "2019-06-19 14:01:58   -1\n",
              "2019-06-19 15:10:39   -1\n",
              "2019-06-19 15:46:35   -1\n",
              "2019-06-19 15:54:00   -1\n",
              "2019-06-20 09:30:00   -1\n",
              "2019-06-20 14:32:11   -1\n",
              "2019-06-20 15:28:31   -1\n",
              "2019-06-21 10:55:04   -1\n",
              "2019-06-21 15:59:41    1\n",
              "2019-06-24 10:59:18    1\n",
              "2019-06-25 09:42:50    1\n",
              "2019-06-25 11:50:09    1\n",
              "2019-06-25 12:28:51    1\n",
              "2019-06-25 14:40:37    1\n",
              "2019-06-26 11:05:28   -1\n",
              "2019-06-26 12:48:37   -1\n",
              "2019-06-26 14:42:44    1\n",
              "2019-06-26 15:58:38    1\n",
              "2019-06-27 10:09:28   -1\n",
              "2019-06-27 12:09:24   -1\n",
              "2019-06-27 15:42:35   -1\n",
              "2019-06-28 09:30:00   -1\n",
              "2019-06-28 15:58:18   -1\n",
              "Length: 6424, dtype: int64"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 121
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "Sc1DLOm-kdLL",
        "colab_type": "code",
        "outputId": "45649ad5-7ab3-421c-cd0e-5880916ee623",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 442
        }
      },
      "source": [
        "#이번엔 ptsl = [0,2]로 설정, 나머지는 같음\n",
        "\n",
        "pt_sl_3 = [0,2]\n",
        "target = DailyVol\n",
        "\n",
        "\n",
        "\n",
        "events4 = labeling.get_events(close, t_events, pt_sl_3, target, min_ret=0.01, num_threads=1 , side_prediction = side2)\n",
        "events4.head()"
      ],
      "execution_count": 122,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "/usr/local/lib/python3.6/dist-packages/mlfinlab/labeling/labeling.py:122: FutureWarning: \n",
            "Passing list-likes to .loc or [] with any missing label will raise\n",
            "KeyError in the future, you can use .reindex() as an alternative.\n",
            "\n",
            "See the documentation here:\n",
            "https://pandas.pydata.org/pandas-docs/stable/indexing.html#deprecate-loc-reindex-listlike\n",
            "  target = target.loc[t_events]\n",
            "/usr/local/lib/python3.6/dist-packages/mlfinlab/labeling/labeling.py:134: FutureWarning: \n",
            "Passing list-likes to .loc or [] with any missing label will raise\n",
            "KeyError in the future, you can use .reindex() as an alternative.\n",
            "\n",
            "See the documentation here:\n",
            "https://pandas.pydata.org/pandas-docs/stable/indexing.html#deprecate-loc-reindex-listlike\n",
            "  side_ = side_prediction.loc[target.index]\n"
          ],
          "name": "stderr"
        },
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>side</th>\n",
              "      <th>t1</th>\n",
              "      <th>trgt</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>2009-10-02 09:32:42</th>\n",
              "      <td>1.0</td>\n",
              "      <td>2010-05-06 14:49:50</td>\n",
              "      <td>0.010414</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-02 10:34:31</th>\n",
              "      <td>NaN</td>\n",
              "      <td>NaT</td>\n",
              "      <td>0.010400</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-05 12:55:39</th>\n",
              "      <td>NaN</td>\n",
              "      <td>NaT</td>\n",
              "      <td>0.011719</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-06 09:31:29</th>\n",
              "      <td>NaN</td>\n",
              "      <td>NaT</td>\n",
              "      <td>0.016259</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-06 11:16:28</th>\n",
              "      <td>NaN</td>\n",
              "      <td>NaT</td>\n",
              "      <td>0.017185</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "</div>"
            ],
            "text/plain": [
              "                     side                  t1      trgt\n",
              "2009-10-02 09:32:42   1.0 2010-05-06 14:49:50  0.010414\n",
              "2009-10-02 10:34:31   NaN                 NaT  0.010400\n",
              "2009-10-05 12:55:39   NaN                 NaT  0.011719\n",
              "2009-10-06 09:31:29   NaN                 NaT  0.016259\n",
              "2009-10-06 11:16:28   NaN                 NaT  0.017185"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 122
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "9W2Z7zCpk5tG",
        "colab_type": "code",
        "outputId": "9a9fc27d-5761-42d4-e67a-60a50058f954",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 1000
        }
      },
      "source": [
        "bins4 = labeling.get_bins(events4,close)\n",
        "bins4\n",
        "\n",
        "#label이 다 0임."
      ],
      "execution_count": 123,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>ret</th>\n",
              "      <th>trgt</th>\n",
              "      <th>bin</th>\n",
              "      <th>side</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>2009-10-02 09:32:42</th>\n",
              "      <td>-0.248122</td>\n",
              "      <td>0.010414</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-13 10:02:16</th>\n",
              "      <td>-0.022644</td>\n",
              "      <td>0.011074</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-14 09:34:13</th>\n",
              "      <td>-0.020764</td>\n",
              "      <td>0.010597</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-16 09:38:27</th>\n",
              "      <td>-0.024795</td>\n",
              "      <td>0.010277</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-23 11:22:52</th>\n",
              "      <td>-0.021655</td>\n",
              "      <td>0.010113</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-27 10:02:21</th>\n",
              "      <td>-0.022727</td>\n",
              "      <td>0.010398</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-30 11:38:14</th>\n",
              "      <td>-0.261173</td>\n",
              "      <td>0.012099</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-02 12:37:26</th>\n",
              "      <td>-0.252372</td>\n",
              "      <td>0.014020</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-04 15:43:57</th>\n",
              "      <td>-0.257618</td>\n",
              "      <td>0.012348</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-05 13:48:34</th>\n",
              "      <td>-0.023188</td>\n",
              "      <td>0.011507</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-06 12:37:18</th>\n",
              "      <td>-0.022362</td>\n",
              "      <td>0.011090</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-09 09:55:20</th>\n",
              "      <td>-0.020881</td>\n",
              "      <td>0.010484</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-11 09:35:45</th>\n",
              "      <td>-0.022067</td>\n",
              "      <td>0.010774</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-23 09:30:00</th>\n",
              "      <td>-0.021988</td>\n",
              "      <td>0.010115</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-12-02 10:10:53</th>\n",
              "      <td>-0.021163</td>\n",
              "      <td>0.010531</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-01-26 09:30:43</th>\n",
              "      <td>-0.021905</td>\n",
              "      <td>0.010127</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-03 11:43:37</th>\n",
              "      <td>-0.021338</td>\n",
              "      <td>0.010420</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-08 11:04:17</th>\n",
              "      <td>-0.029755</td>\n",
              "      <td>0.014650</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-09 12:17:56</th>\n",
              "      <td>-0.026864</td>\n",
              "      <td>0.013556</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-10 10:43:58</th>\n",
              "      <td>-0.276194</td>\n",
              "      <td>0.013106</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-10 13:21:57</th>\n",
              "      <td>-0.025260</td>\n",
              "      <td>0.012773</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-11 12:18:26</th>\n",
              "      <td>-0.024896</td>\n",
              "      <td>0.012357</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-12 09:45:01</th>\n",
              "      <td>-0.275201</td>\n",
              "      <td>0.012028</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-16 09:32:11</th>\n",
              "      <td>-0.024870</td>\n",
              "      <td>0.010805</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-04-19 12:27:11</th>\n",
              "      <td>-0.023977</td>\n",
              "      <td>0.010027</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-04-29 09:45:48</th>\n",
              "      <td>-0.021458</td>\n",
              "      <td>0.010709</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-04-30 15:00:11</th>\n",
              "      <td>-0.024253</td>\n",
              "      <td>0.011672</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-04 09:29:48</th>\n",
              "      <td>-0.027784</td>\n",
              "      <td>0.011889</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-05 09:32:34</th>\n",
              "      <td>-0.028016</td>\n",
              "      <td>0.014002</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-05 14:37:37</th>\n",
              "      <td>-0.028746</td>\n",
              "      <td>0.012825</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>...</th>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-07-06 12:26:24</th>\n",
              "      <td>-0.028415</td>\n",
              "      <td>0.013159</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-07-08 09:30:57</th>\n",
              "      <td>-0.026632</td>\n",
              "      <td>0.010800</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-09-13 09:30:00</th>\n",
              "      <td>-0.022033</td>\n",
              "      <td>0.010334</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-02-05 15:59:44</th>\n",
              "      <td>-0.021991</td>\n",
              "      <td>0.010799</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-02-06 09:51:40</th>\n",
              "      <td>-0.026622</td>\n",
              "      <td>0.012864</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-02-07 15:54:28</th>\n",
              "      <td>-0.038583</td>\n",
              "      <td>0.018189</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-02-08 10:01:01</th>\n",
              "      <td>-0.035153</td>\n",
              "      <td>0.017457</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-02-09 10:45:23</th>\n",
              "      <td>-0.025837</td>\n",
              "      <td>0.012704</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-02-09 11:57:06</th>\n",
              "      <td>-0.021970</td>\n",
              "      <td>0.010957</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-02-12 09:30:00</th>\n",
              "      <td>-0.032278</td>\n",
              "      <td>0.016481</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-03-06 09:30:00</th>\n",
              "      <td>-0.024056</td>\n",
              "      <td>0.012229</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-03-07 09:30:00</th>\n",
              "      <td>-0.020543</td>\n",
              "      <td>0.010240</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-03-27 15:25:51</th>\n",
              "      <td>-0.022721</td>\n",
              "      <td>0.010956</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-03-28 13:01:48</th>\n",
              "      <td>-0.021336</td>\n",
              "      <td>0.010533</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-04-02 13:42:44</th>\n",
              "      <td>-0.028222</td>\n",
              "      <td>0.014031</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-04-02 15:45:05</th>\n",
              "      <td>-0.025023</td>\n",
              "      <td>0.012721</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-04-03 09:30:00</th>\n",
              "      <td>-0.023161</td>\n",
              "      <td>0.010985</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-04-09 10:32:14</th>\n",
              "      <td>-0.028304</td>\n",
              "      <td>0.014476</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-04-10 09:31:21</th>\n",
              "      <td>-0.025168</td>\n",
              "      <td>0.012755</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-04-10 11:42:36</th>\n",
              "      <td>-0.023155</td>\n",
              "      <td>0.011254</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-06-01 09:37:44</th>\n",
              "      <td>-0.021580</td>\n",
              "      <td>0.011014</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-10-15 11:27:36</th>\n",
              "      <td>-0.023221</td>\n",
              "      <td>0.011572</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-10-31 09:31:31</th>\n",
              "      <td>-0.020272</td>\n",
              "      <td>0.010167</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-04 13:25:32</th>\n",
              "      <td>-0.021764</td>\n",
              "      <td>0.010333</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-06 09:30:00</th>\n",
              "      <td>-0.026945</td>\n",
              "      <td>0.013347</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-06 11:53:50</th>\n",
              "      <td>-0.021721</td>\n",
              "      <td>0.010311</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-07 10:33:03</th>\n",
              "      <td>-0.026559</td>\n",
              "      <td>0.013082</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-31 09:30:00</th>\n",
              "      <td>-0.029519</td>\n",
              "      <td>0.013854</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-04 10:23:47</th>\n",
              "      <td>-0.028297</td>\n",
              "      <td>0.014161</td>\n",
              "      <td>0</td>\n",
              "      <td>-1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-03-25 09:51:16</th>\n",
              "      <td>-0.021449</td>\n",
              "      <td>0.010639</td>\n",
              "      <td>0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "<p>289 rows × 4 columns</p>\n",
              "</div>"
            ],
            "text/plain": [
              "                          ret      trgt  bin  side\n",
              "2009-10-02 09:32:42 -0.248122  0.010414    0   1.0\n",
              "2009-10-13 10:02:16 -0.022644  0.011074    0   1.0\n",
              "2009-10-14 09:34:13 -0.020764  0.010597    0  -1.0\n",
              "2009-10-16 09:38:27 -0.024795  0.010277    0   1.0\n",
              "2009-10-23 11:22:52 -0.021655  0.010113    0   1.0\n",
              "2009-10-27 10:02:21 -0.022727  0.010398    0   1.0\n",
              "2009-10-30 11:38:14 -0.261173  0.012099    0   1.0\n",
              "2009-11-02 12:37:26 -0.252372  0.014020    0   1.0\n",
              "2009-11-04 15:43:57 -0.257618  0.012348    0   1.0\n",
              "2009-11-05 13:48:34 -0.023188  0.011507    0  -1.0\n",
              "2009-11-06 12:37:18 -0.022362  0.011090    0  -1.0\n",
              "2009-11-09 09:55:20 -0.020881  0.010484    0  -1.0\n",
              "2009-11-11 09:35:45 -0.022067  0.010774    0  -1.0\n",
              "2009-11-23 09:30:00 -0.021988  0.010115    0  -1.0\n",
              "2009-12-02 10:10:53 -0.021163  0.010531    0  -1.0\n",
              "2010-01-26 09:30:43 -0.021905  0.010127    0   1.0\n",
              "2010-02-03 11:43:37 -0.021338  0.010420    0   1.0\n",
              "2010-02-08 11:04:17 -0.029755  0.014650    0  -1.0\n",
              "2010-02-09 12:17:56 -0.026864  0.013556    0  -1.0\n",
              "2010-02-10 10:43:58 -0.276194  0.013106    0   1.0\n",
              "2010-02-10 13:21:57 -0.025260  0.012773    0  -1.0\n",
              "2010-02-11 12:18:26 -0.024896  0.012357    0  -1.0\n",
              "2010-02-12 09:45:01 -0.275201  0.012028    0   1.0\n",
              "2010-02-16 09:32:11 -0.024870  0.010805    0  -1.0\n",
              "2010-04-19 12:27:11 -0.023977  0.010027    0   1.0\n",
              "2010-04-29 09:45:48 -0.021458  0.010709    0  -1.0\n",
              "2010-04-30 15:00:11 -0.024253  0.011672    0   1.0\n",
              "2010-05-04 09:29:48 -0.027784  0.011889    0   1.0\n",
              "2010-05-05 09:32:34 -0.028016  0.014002    0   1.0\n",
              "2010-05-05 14:37:37 -0.028746  0.012825    0   1.0\n",
              "...                       ...       ...  ...   ...\n",
              "2016-07-06 12:26:24 -0.028415  0.013159    0  -1.0\n",
              "2016-07-08 09:30:57 -0.026632  0.010800    0  -1.0\n",
              "2016-09-13 09:30:00 -0.022033  0.010334    0   1.0\n",
              "2018-02-05 15:59:44 -0.021991  0.010799    0   1.0\n",
              "2018-02-06 09:51:40 -0.026622  0.012864    0  -1.0\n",
              "2018-02-07 15:54:28 -0.038583  0.018189    0   1.0\n",
              "2018-02-08 10:01:01 -0.035153  0.017457    0   1.0\n",
              "2018-02-09 10:45:23 -0.025837  0.012704    0   1.0\n",
              "2018-02-09 11:57:06 -0.021970  0.010957    0   1.0\n",
              "2018-02-12 09:30:00 -0.032278  0.016481    0  -1.0\n",
              "2018-03-06 09:30:00 -0.024056  0.012229    0  -1.0\n",
              "2018-03-07 09:30:00 -0.020543  0.010240    0   1.0\n",
              "2018-03-27 15:25:51 -0.022721  0.010956    0   1.0\n",
              "2018-03-28 13:01:48 -0.021336  0.010533    0   1.0\n",
              "2018-04-02 13:42:44 -0.028222  0.014031    0   1.0\n",
              "2018-04-02 15:45:05 -0.025023  0.012721    0  -1.0\n",
              "2018-04-03 09:30:00 -0.023161  0.010985    0  -1.0\n",
              "2018-04-09 10:32:14 -0.028304  0.014476    0  -1.0\n",
              "2018-04-10 09:31:21 -0.025168  0.012755    0  -1.0\n",
              "2018-04-10 11:42:36 -0.023155  0.011254    0  -1.0\n",
              "2018-06-01 09:37:44 -0.021580  0.011014    0  -1.0\n",
              "2018-10-15 11:27:36 -0.023221  0.011572    0  -1.0\n",
              "2018-10-31 09:31:31 -0.020272  0.010167    0  -1.0\n",
              "2018-12-04 13:25:32 -0.021764  0.010333    0   1.0\n",
              "2018-12-06 09:30:00 -0.026945  0.013347    0   1.0\n",
              "2018-12-06 11:53:50 -0.021721  0.010311    0  -1.0\n",
              "2018-12-07 10:33:03 -0.026559  0.013082    0   1.0\n",
              "2018-12-31 09:30:00 -0.029519  0.013854    0  -1.0\n",
              "2019-01-04 10:23:47 -0.028297  0.014161    0  -1.0\n",
              "2019-03-25 09:51:16 -0.021449  0.010639    0   1.0\n",
              "\n",
              "[289 rows x 4 columns]"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 123
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "BbSmm4IZP_qf",
        "colab_type": "code",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 51
        },
        "outputId": "bbdfd99b-6362-41a3-a88d-fd8ff25c80f1"
      },
      "source": [
        "bins4.bin.value_counts()"
      ],
      "execution_count": 124,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "0    289\n",
              "Name: bin, dtype: int64"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 124
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "OMWpMT5cTXbz",
        "colab_type": "code",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 1000
        },
        "outputId": "ef92d2ff-b5b5-4117-98e8-80c7444753ce"
      },
      "source": [
        "features2 = (pd.DataFrame()\n",
        "            .assign(vol = events4.trgt)\n",
        "            .assign(side = side2)\n",
        "            .assign(srl_corr = srl_corr)\n",
        "            .drop_duplicates()\n",
        "            .dropna())\n",
        "features2"
      ],
      "execution_count": 125,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>vol</th>\n",
              "      <th>side</th>\n",
              "      <th>srl_corr</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>2009-10-02 09:32:42</th>\n",
              "      <td>0.010414</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.775166</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-13 10:02:16</th>\n",
              "      <td>0.011074</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.152978</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-14 09:34:13</th>\n",
              "      <td>0.010597</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.105152</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-16 09:38:27</th>\n",
              "      <td>0.010277</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.033346</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-23 11:22:52</th>\n",
              "      <td>0.010113</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.333561</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-27 10:02:21</th>\n",
              "      <td>0.010398</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.079453</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-30 11:38:14</th>\n",
              "      <td>0.012099</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.347701</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-02 12:37:26</th>\n",
              "      <td>0.014020</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.067175</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-04 15:43:57</th>\n",
              "      <td>0.012348</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.137498</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-05 13:48:34</th>\n",
              "      <td>0.011507</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.012805</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-06 12:37:18</th>\n",
              "      <td>0.011090</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.069844</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-09 09:55:20</th>\n",
              "      <td>0.010484</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.364961</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-11 09:35:45</th>\n",
              "      <td>0.010774</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.256541</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-23 09:30:00</th>\n",
              "      <td>0.010115</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.021819</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-12-02 10:10:53</th>\n",
              "      <td>0.010531</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.061300</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-01-26 09:30:43</th>\n",
              "      <td>0.010127</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.313278</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-03 11:43:37</th>\n",
              "      <td>0.010420</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.240872</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-08 11:04:17</th>\n",
              "      <td>0.014650</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.089479</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-09 12:17:56</th>\n",
              "      <td>0.013556</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.023096</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-10 10:43:58</th>\n",
              "      <td>0.013106</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.342264</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-10 13:21:57</th>\n",
              "      <td>0.012773</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.258550</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-11 12:18:26</th>\n",
              "      <td>0.012357</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.268868</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-12 09:45:01</th>\n",
              "      <td>0.012028</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.232605</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-16 09:32:11</th>\n",
              "      <td>0.010805</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.274634</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-04-19 12:27:11</th>\n",
              "      <td>0.010027</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.036353</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-04-29 09:45:48</th>\n",
              "      <td>0.010709</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.025992</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-04-30 15:00:11</th>\n",
              "      <td>0.011672</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.022900</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-04 09:29:48</th>\n",
              "      <td>0.011889</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.238356</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-05 09:32:34</th>\n",
              "      <td>0.014002</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.431729</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-05 14:37:37</th>\n",
              "      <td>0.012825</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.086266</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>...</th>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-09-13 09:30:00</th>\n",
              "      <td>0.010334</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.229546</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-02-05 15:59:44</th>\n",
              "      <td>0.010799</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.074746</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-02-06 09:51:40</th>\n",
              "      <td>0.012864</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.321424</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-02-07 15:54:28</th>\n",
              "      <td>0.018189</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.155709</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-02-08 10:01:01</th>\n",
              "      <td>0.017457</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.201360</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-02-09 10:45:23</th>\n",
              "      <td>0.012704</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.075816</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-02-09 11:57:06</th>\n",
              "      <td>0.010957</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.437657</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-02-12 09:30:00</th>\n",
              "      <td>0.016481</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.271472</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-03-06 09:30:00</th>\n",
              "      <td>0.012229</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.185034</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-03-07 09:30:00</th>\n",
              "      <td>0.010240</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.039989</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-03-27 15:25:51</th>\n",
              "      <td>0.010956</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.207569</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-03-28 13:01:48</th>\n",
              "      <td>0.010533</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.246255</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-04-02 13:42:44</th>\n",
              "      <td>0.014031</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.163925</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-04-02 15:45:05</th>\n",
              "      <td>0.012721</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.118816</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-04-03 09:30:00</th>\n",
              "      <td>0.010985</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.073980</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-04-09 10:32:14</th>\n",
              "      <td>0.014476</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.077203</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-04-10 09:31:21</th>\n",
              "      <td>0.012755</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.048121</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-04-10 11:42:36</th>\n",
              "      <td>0.011254</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.045265</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-06-01 09:37:44</th>\n",
              "      <td>0.011014</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.026442</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-10-15 11:27:36</th>\n",
              "      <td>0.011572</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.104245</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-10-31 09:31:31</th>\n",
              "      <td>0.010167</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.462672</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-04 13:25:32</th>\n",
              "      <td>0.010333</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.082927</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-06 09:30:00</th>\n",
              "      <td>0.013347</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.049356</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-06 11:53:50</th>\n",
              "      <td>0.010311</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.170955</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-07 10:33:03</th>\n",
              "      <td>0.013082</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.420312</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 10:00:43</th>\n",
              "      <td>0.011418</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.266496</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-27 09:30:00</th>\n",
              "      <td>0.011859</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.075663</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-31 09:30:00</th>\n",
              "      <td>0.013854</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.158575</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-04 10:23:47</th>\n",
              "      <td>0.014161</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.045968</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-03-25 09:51:16</th>\n",
              "      <td>0.010639</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.191971</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "<p>314 rows × 3 columns</p>\n",
              "</div>"
            ],
            "text/plain": [
              "                          vol  side  srl_corr\n",
              "2009-10-02 09:32:42  0.010414   1.0 -0.775166\n",
              "2009-10-13 10:02:16  0.011074   1.0 -0.152978\n",
              "2009-10-14 09:34:13  0.010597  -1.0 -0.105152\n",
              "2009-10-16 09:38:27  0.010277   1.0 -0.033346\n",
              "2009-10-23 11:22:52  0.010113   1.0  0.333561\n",
              "2009-10-27 10:02:21  0.010398   1.0 -0.079453\n",
              "2009-10-30 11:38:14  0.012099   1.0 -0.347701\n",
              "2009-11-02 12:37:26  0.014020   1.0 -0.067175\n",
              "2009-11-04 15:43:57  0.012348   1.0  0.137498\n",
              "2009-11-05 13:48:34  0.011507  -1.0  0.012805\n",
              "2009-11-06 12:37:18  0.011090  -1.0 -0.069844\n",
              "2009-11-09 09:55:20  0.010484  -1.0 -0.364961\n",
              "2009-11-11 09:35:45  0.010774  -1.0 -0.256541\n",
              "2009-11-23 09:30:00  0.010115  -1.0 -0.021819\n",
              "2009-12-02 10:10:53  0.010531  -1.0  0.061300\n",
              "2010-01-26 09:30:43  0.010127   1.0 -0.313278\n",
              "2010-02-03 11:43:37  0.010420   1.0  0.240872\n",
              "2010-02-08 11:04:17  0.014650  -1.0  0.089479\n",
              "2010-02-09 12:17:56  0.013556  -1.0  0.023096\n",
              "2010-02-10 10:43:58  0.013106   1.0 -0.342264\n",
              "2010-02-10 13:21:57  0.012773  -1.0 -0.258550\n",
              "2010-02-11 12:18:26  0.012357  -1.0 -0.268868\n",
              "2010-02-12 09:45:01  0.012028   1.0 -0.232605\n",
              "2010-02-16 09:32:11  0.010805  -1.0 -0.274634\n",
              "2010-04-19 12:27:11  0.010027   1.0  0.036353\n",
              "2010-04-29 09:45:48  0.010709  -1.0 -0.025992\n",
              "2010-04-30 15:00:11  0.011672   1.0  0.022900\n",
              "2010-05-04 09:29:48  0.011889   1.0  0.238356\n",
              "2010-05-05 09:32:34  0.014002   1.0 -0.431729\n",
              "2010-05-05 14:37:37  0.012825   1.0 -0.086266\n",
              "...                       ...   ...       ...\n",
              "2016-09-13 09:30:00  0.010334   1.0 -0.229546\n",
              "2018-02-05 15:59:44  0.010799   1.0  0.074746\n",
              "2018-02-06 09:51:40  0.012864  -1.0  0.321424\n",
              "2018-02-07 15:54:28  0.018189   1.0  0.155709\n",
              "2018-02-08 10:01:01  0.017457   1.0 -0.201360\n",
              "2018-02-09 10:45:23  0.012704   1.0  0.075816\n",
              "2018-02-09 11:57:06  0.010957   1.0  0.437657\n",
              "2018-02-12 09:30:00  0.016481  -1.0  0.271472\n",
              "2018-03-06 09:30:00  0.012229  -1.0 -0.185034\n",
              "2018-03-07 09:30:00  0.010240   1.0  0.039989\n",
              "2018-03-27 15:25:51  0.010956   1.0 -0.207569\n",
              "2018-03-28 13:01:48  0.010533   1.0  0.246255\n",
              "2018-04-02 13:42:44  0.014031   1.0  0.163925\n",
              "2018-04-02 15:45:05  0.012721  -1.0  0.118816\n",
              "2018-04-03 09:30:00  0.010985  -1.0  0.073980\n",
              "2018-04-09 10:32:14  0.014476  -1.0 -0.077203\n",
              "2018-04-10 09:31:21  0.012755  -1.0  0.048121\n",
              "2018-04-10 11:42:36  0.011254  -1.0 -0.045265\n",
              "2018-06-01 09:37:44  0.011014  -1.0  0.026442\n",
              "2018-10-15 11:27:36  0.011572  -1.0 -0.104245\n",
              "2018-10-31 09:31:31  0.010167  -1.0 -0.462672\n",
              "2018-12-04 13:25:32  0.010333   1.0  0.082927\n",
              "2018-12-06 09:30:00  0.013347   1.0 -0.049356\n",
              "2018-12-06 11:53:50  0.010311  -1.0  0.170955\n",
              "2018-12-07 10:33:03  0.013082   1.0  0.420312\n",
              "2018-12-26 10:00:43  0.011418   1.0  0.266496\n",
              "2018-12-27 09:30:00  0.011859   1.0  0.075663\n",
              "2018-12-31 09:30:00  0.013854  -1.0  0.158575\n",
              "2019-01-04 10:23:47  0.014161  -1.0 -0.045968\n",
              "2019-03-25 09:51:16  0.010639   1.0 -0.191971\n",
              "\n",
              "[314 rows x 3 columns]"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 125
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "Emf4m9QjTbPF",
        "colab_type": "code",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 1000
        },
        "outputId": "13e92592-5664-4220-f398-42f4b55b9f89"
      },
      "source": [
        "Xy2 = (pd.merge_asof(features2, bins4.bin, \n",
        "                    left_index=True, right_index=True, \n",
        "                    direction='forward').dropna())\n",
        "Xy2"
      ],
      "execution_count": 126,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>vol</th>\n",
              "      <th>side</th>\n",
              "      <th>srl_corr</th>\n",
              "      <th>bin</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>2009-10-02 09:32:42</th>\n",
              "      <td>0.010414</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.775166</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-13 10:02:16</th>\n",
              "      <td>0.011074</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.152978</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-14 09:34:13</th>\n",
              "      <td>0.010597</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.105152</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-16 09:38:27</th>\n",
              "      <td>0.010277</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.033346</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-23 11:22:52</th>\n",
              "      <td>0.010113</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.333561</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-27 10:02:21</th>\n",
              "      <td>0.010398</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.079453</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-10-30 11:38:14</th>\n",
              "      <td>0.012099</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.347701</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-02 12:37:26</th>\n",
              "      <td>0.014020</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.067175</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-04 15:43:57</th>\n",
              "      <td>0.012348</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.137498</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-05 13:48:34</th>\n",
              "      <td>0.011507</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.012805</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-06 12:37:18</th>\n",
              "      <td>0.011090</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.069844</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-09 09:55:20</th>\n",
              "      <td>0.010484</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.364961</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-11 09:35:45</th>\n",
              "      <td>0.010774</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.256541</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-11-23 09:30:00</th>\n",
              "      <td>0.010115</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.021819</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2009-12-02 10:10:53</th>\n",
              "      <td>0.010531</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.061300</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-01-26 09:30:43</th>\n",
              "      <td>0.010127</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.313278</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-03 11:43:37</th>\n",
              "      <td>0.010420</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.240872</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-08 11:04:17</th>\n",
              "      <td>0.014650</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.089479</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-09 12:17:56</th>\n",
              "      <td>0.013556</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.023096</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-10 10:43:58</th>\n",
              "      <td>0.013106</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.342264</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-10 13:21:57</th>\n",
              "      <td>0.012773</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.258550</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-11 12:18:26</th>\n",
              "      <td>0.012357</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.268868</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-12 09:45:01</th>\n",
              "      <td>0.012028</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.232605</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-02-16 09:32:11</th>\n",
              "      <td>0.010805</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.274634</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-04-19 12:27:11</th>\n",
              "      <td>0.010027</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.036353</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-04-29 09:45:48</th>\n",
              "      <td>0.010709</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.025992</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-04-30 15:00:11</th>\n",
              "      <td>0.011672</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.022900</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-04 09:29:48</th>\n",
              "      <td>0.011889</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.238356</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-05 09:32:34</th>\n",
              "      <td>0.014002</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.431729</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2010-05-05 14:37:37</th>\n",
              "      <td>0.012825</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.086266</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>...</th>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2016-09-13 09:30:00</th>\n",
              "      <td>0.010334</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.229546</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-02-05 15:59:44</th>\n",
              "      <td>0.010799</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.074746</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-02-06 09:51:40</th>\n",
              "      <td>0.012864</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.321424</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-02-07 15:54:28</th>\n",
              "      <td>0.018189</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.155709</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-02-08 10:01:01</th>\n",
              "      <td>0.017457</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.201360</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-02-09 10:45:23</th>\n",
              "      <td>0.012704</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.075816</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-02-09 11:57:06</th>\n",
              "      <td>0.010957</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.437657</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-02-12 09:30:00</th>\n",
              "      <td>0.016481</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.271472</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-03-06 09:30:00</th>\n",
              "      <td>0.012229</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.185034</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-03-07 09:30:00</th>\n",
              "      <td>0.010240</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.039989</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-03-27 15:25:51</th>\n",
              "      <td>0.010956</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.207569</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-03-28 13:01:48</th>\n",
              "      <td>0.010533</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.246255</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-04-02 13:42:44</th>\n",
              "      <td>0.014031</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.163925</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-04-02 15:45:05</th>\n",
              "      <td>0.012721</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.118816</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-04-03 09:30:00</th>\n",
              "      <td>0.010985</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.073980</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-04-09 10:32:14</th>\n",
              "      <td>0.014476</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.077203</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-04-10 09:31:21</th>\n",
              "      <td>0.012755</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.048121</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-04-10 11:42:36</th>\n",
              "      <td>0.011254</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.045265</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-06-01 09:37:44</th>\n",
              "      <td>0.011014</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.026442</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-10-15 11:27:36</th>\n",
              "      <td>0.011572</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.104245</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-10-31 09:31:31</th>\n",
              "      <td>0.010167</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.462672</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-04 13:25:32</th>\n",
              "      <td>0.010333</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.082927</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-06 09:30:00</th>\n",
              "      <td>0.013347</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.049356</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-06 11:53:50</th>\n",
              "      <td>0.010311</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.170955</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-07 10:33:03</th>\n",
              "      <td>0.013082</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.420312</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-26 10:00:43</th>\n",
              "      <td>0.011418</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.266496</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-27 09:30:00</th>\n",
              "      <td>0.011859</td>\n",
              "      <td>1.0</td>\n",
              "      <td>0.075663</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2018-12-31 09:30:00</th>\n",
              "      <td>0.013854</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.158575</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-01-04 10:23:47</th>\n",
              "      <td>0.014161</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-0.045968</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2019-03-25 09:51:16</th>\n",
              "      <td>0.010639</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-0.191971</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "<p>314 rows × 4 columns</p>\n",
              "</div>"
            ],
            "text/plain": [
              "                          vol  side  srl_corr  bin\n",
              "2009-10-02 09:32:42  0.010414   1.0 -0.775166    0\n",
              "2009-10-13 10:02:16  0.011074   1.0 -0.152978    0\n",
              "2009-10-14 09:34:13  0.010597  -1.0 -0.105152    0\n",
              "2009-10-16 09:38:27  0.010277   1.0 -0.033346    0\n",
              "2009-10-23 11:22:52  0.010113   1.0  0.333561    0\n",
              "2009-10-27 10:02:21  0.010398   1.0 -0.079453    0\n",
              "2009-10-30 11:38:14  0.012099   1.0 -0.347701    0\n",
              "2009-11-02 12:37:26  0.014020   1.0 -0.067175    0\n",
              "2009-11-04 15:43:57  0.012348   1.0  0.137498    0\n",
              "2009-11-05 13:48:34  0.011507  -1.0  0.012805    0\n",
              "2009-11-06 12:37:18  0.011090  -1.0 -0.069844    0\n",
              "2009-11-09 09:55:20  0.010484  -1.0 -0.364961    0\n",
              "2009-11-11 09:35:45  0.010774  -1.0 -0.256541    0\n",
              "2009-11-23 09:30:00  0.010115  -1.0 -0.021819    0\n",
              "2009-12-02 10:10:53  0.010531  -1.0  0.061300    0\n",
              "2010-01-26 09:30:43  0.010127   1.0 -0.313278    0\n",
              "2010-02-03 11:43:37  0.010420   1.0  0.240872    0\n",
              "2010-02-08 11:04:17  0.014650  -1.0  0.089479    0\n",
              "2010-02-09 12:17:56  0.013556  -1.0  0.023096    0\n",
              "2010-02-10 10:43:58  0.013106   1.0 -0.342264    0\n",
              "2010-02-10 13:21:57  0.012773  -1.0 -0.258550    0\n",
              "2010-02-11 12:18:26  0.012357  -1.0 -0.268868    0\n",
              "2010-02-12 09:45:01  0.012028   1.0 -0.232605    0\n",
              "2010-02-16 09:32:11  0.010805  -1.0 -0.274634    0\n",
              "2010-04-19 12:27:11  0.010027   1.0  0.036353    0\n",
              "2010-04-29 09:45:48  0.010709  -1.0 -0.025992    0\n",
              "2010-04-30 15:00:11  0.011672   1.0  0.022900    0\n",
              "2010-05-04 09:29:48  0.011889   1.0  0.238356    0\n",
              "2010-05-05 09:32:34  0.014002   1.0 -0.431729    0\n",
              "2010-05-05 14:37:37  0.012825   1.0 -0.086266    0\n",
              "...                       ...   ...       ...  ...\n",
              "2016-09-13 09:30:00  0.010334   1.0 -0.229546    0\n",
              "2018-02-05 15:59:44  0.010799   1.0  0.074746    0\n",
              "2018-02-06 09:51:40  0.012864  -1.0  0.321424    0\n",
              "2018-02-07 15:54:28  0.018189   1.0  0.155709    0\n",
              "2018-02-08 10:01:01  0.017457   1.0 -0.201360    0\n",
              "2018-02-09 10:45:23  0.012704   1.0  0.075816    0\n",
              "2018-02-09 11:57:06  0.010957   1.0  0.437657    0\n",
              "2018-02-12 09:30:00  0.016481  -1.0  0.271472    0\n",
              "2018-03-06 09:30:00  0.012229  -1.0 -0.185034    0\n",
              "2018-03-07 09:30:00  0.010240   1.0  0.039989    0\n",
              "2018-03-27 15:25:51  0.010956   1.0 -0.207569    0\n",
              "2018-03-28 13:01:48  0.010533   1.0  0.246255    0\n",
              "2018-04-02 13:42:44  0.014031   1.0  0.163925    0\n",
              "2018-04-02 15:45:05  0.012721  -1.0  0.118816    0\n",
              "2018-04-03 09:30:00  0.010985  -1.0  0.073980    0\n",
              "2018-04-09 10:32:14  0.014476  -1.0 -0.077203    0\n",
              "2018-04-10 09:31:21  0.012755  -1.0  0.048121    0\n",
              "2018-04-10 11:42:36  0.011254  -1.0 -0.045265    0\n",
              "2018-06-01 09:37:44  0.011014  -1.0  0.026442    0\n",
              "2018-10-15 11:27:36  0.011572  -1.0 -0.104245    0\n",
              "2018-10-31 09:31:31  0.010167  -1.0 -0.462672    0\n",
              "2018-12-04 13:25:32  0.010333   1.0  0.082927    0\n",
              "2018-12-06 09:30:00  0.013347   1.0 -0.049356    0\n",
              "2018-12-06 11:53:50  0.010311  -1.0  0.170955    0\n",
              "2018-12-07 10:33:03  0.013082   1.0  0.420312    0\n",
              "2018-12-26 10:00:43  0.011418   1.0  0.266496    0\n",
              "2018-12-27 09:30:00  0.011859   1.0  0.075663    0\n",
              "2018-12-31 09:30:00  0.013854  -1.0  0.158575    0\n",
              "2019-01-04 10:23:47  0.014161  -1.0 -0.045968    0\n",
              "2019-03-25 09:51:16  0.010639   1.0 -0.191971    0\n",
              "\n",
              "[314 rows x 4 columns]"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 126
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "OfXPo8qNlKn9",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "# Random Forest\n",
        "\n",
        "# X는 side\n",
        "# y는 bin (레이블)\n",
        "\n",
        "X2 = Xy2.drop('bin',axis=1).values\n",
        "y2 = Xy2.bin.values\n",
        "\n",
        "#train test split\n",
        "\n",
        "X_train2, X_test2, y_train2, y_test2 = train_test_split(X2, y2, test_size=0.2,shuffle=False)"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "NXOaUUnWlXzm",
        "colab_type": "code",
        "outputId": "8229d337-1232-466f-cb35-535e0a3ff17b",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 663
        }
      },
      "source": [
        "rf2 = RandomForestClassifier(n_estimators=100,max_depth=2)\n",
        "rf2.fit(X_train2, y_train2)\n",
        "\n",
        "\n",
        "\n",
        "# 예측값\n",
        "\n",
        "yfit_rf2 = rf2.predict(X_test2)\n",
        "\n",
        "X_test2.ravel()"
      ],
      "execution_count": 128,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "array([ 0.01348916, -1.        ,  0.14539063,  0.01574518,  1.        ,\n",
              "       -0.07502153,  0.01448391,  1.        , -0.12947751,  0.01072229,\n",
              "       -1.        ,  0.13074583,  0.01006706,  1.        ,  0.24317037,\n",
              "        0.01308657, -1.        ,  0.07903833,  0.01328415, -1.        ,\n",
              "        0.10917293,  0.02355485,  1.        , -0.13821665,  0.01988008,\n",
              "       -1.        , -0.02605307,  0.01890867, -1.        , -0.39495538,\n",
              "        0.01364354, -1.        ,  0.18390936,  0.01107042, -1.        ,\n",
              "       -0.4944586 ,  0.01054239,  1.        ,  0.44712709,  0.01164806,\n",
              "        1.        , -0.03805781,  0.01231568, -1.        , -0.16222537,\n",
              "        0.01093015, -1.        , -0.09660272,  0.01427019,  1.        ,\n",
              "        0.15219487,  0.01213161,  1.        , -0.45128463,  0.01168303,\n",
              "        1.        , -0.37992869,  0.01073571,  1.        , -0.28700731,\n",
              "        0.01020655, -1.        ,  0.07024774,  0.01021809, -1.        ,\n",
              "        0.04081309,  0.01023956,  1.        ,  0.27421854,  0.01399328,\n",
              "       -1.        ,  0.35926839,  0.02152287, -1.        , -0.34746533,\n",
              "        0.0164975 , -1.        , -0.24121517,  0.01253665,  1.        ,\n",
              "       -0.22609547,  0.01224777,  1.        , -0.42508947,  0.01633127,\n",
              "        1.        ,  0.27050324,  0.0124849 , -1.        , -0.20265927,\n",
              "        0.01321315,  1.        ,  0.26004767,  0.01315931, -1.        ,\n",
              "        0.40097298,  0.01079956, -1.        ,  0.0608075 ,  0.01033376,\n",
              "        1.        , -0.22954611,  0.01079874,  1.        ,  0.07474569,\n",
              "        0.01286371, -1.        ,  0.32142377,  0.01818935,  1.        ,\n",
              "        0.15570917,  0.0174573 ,  1.        , -0.20136017,  0.01270389,\n",
              "        1.        ,  0.07581639,  0.01095745,  1.        ,  0.43765724,\n",
              "        0.01648101, -1.        ,  0.27147185,  0.01222898, -1.        ,\n",
              "       -0.18503351,  0.01024027,  1.        ,  0.03998915,  0.01095615,\n",
              "        1.        , -0.20756894,  0.01053254,  1.        ,  0.24625547,\n",
              "        0.01403086,  1.        ,  0.16392479,  0.01272106, -1.        ,\n",
              "        0.1188161 ,  0.01098478, -1.        ,  0.07397967,  0.0144756 ,\n",
              "       -1.        , -0.07720287,  0.01275546, -1.        ,  0.04812138,\n",
              "        0.01125398, -1.        , -0.04526481,  0.01101432, -1.        ,\n",
              "        0.02644226,  0.01157216, -1.        , -0.10424535,  0.01016674,\n",
              "       -1.        , -0.46267194,  0.01033309,  1.        ,  0.08292739,\n",
              "        0.01334738,  1.        , -0.04935571,  0.0103114 , -1.        ,\n",
              "        0.17095463,  0.01308188,  1.        ,  0.42031161,  0.01141819,\n",
              "        1.        ,  0.26649568,  0.01185852,  1.        ,  0.07566345,\n",
              "        0.01385409, -1.        ,  0.15857501,  0.01416102, -1.        ,\n",
              "       -0.04596751,  0.01063899,  1.        , -0.19197131])"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 128
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "LmHcJnapxm-m",
        "colab_type": "code",
        "outputId": "0f16af03-3d9a-45d9-f71d-d7dd917a201f",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 68
        }
      },
      "source": [
        "yfit_rf2"
      ],
      "execution_count": 129,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
              "       0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
              "       0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0])"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 129
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "q-wy6xC9lsoY",
        "colab_type": "code",
        "outputId": "62de6460-0731-493d-8323-858b144b8bb8",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 34
        }
      },
      "source": [
        "accuracy_score(y_test2, yfit_rf2)"
      ],
      "execution_count": 130,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "1.0"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 130
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "0TQjKTd4moxo",
        "colab_type": "code",
        "outputId": "22ed1e08-8770-4af9-834c-29ed25e28a18",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 291
        }
      },
      "source": [
        "mat = confusion_matrix(y_test2, yfit_rf2)\n",
        "sns.heatmap(mat , annot=True)\n",
        "plt.xlabel('true label')\n",
        "plt.ylabel('predicted label');"
      ],
      "execution_count": 131,
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "image/png": "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\nwYRPRCQS/wedR+1/kv9SXAAAAABJRU5ErkJggg==\n",
            "text/plain": [
              "<Figure size 432x288 with 2 Axes>"
            ]
          },
          "metadata": {
            "tags": []
          }
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "KXs85tq2mumD",
        "colab_type": "code",
        "outputId": "7c96037d-92af-48dc-b1b5-2dda97e8ffb6",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 153
        }
      },
      "source": [
        "print(classification_report(y_test2, yfit_rf2))\n"
      ],
      "execution_count": 132,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "              precision    recall  f1-score   support\n",
            "\n",
            "           0       1.00      1.00      1.00        63\n",
            "\n",
            "    accuracy                           1.00        63\n",
            "   macro avg       1.00      1.00      1.00        63\n",
            "weighted avg       1.00      1.00      1.00        63\n",
            "\n"
          ],
          "name": "stdout"
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "4OIMS0L4m2EE",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "# 애초에 레이블이 다 0이기 때문에 다 0으로 예측할 수 밖에 없음."
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "9DhpWYcmWTkB",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        ""
      ],
      "execution_count": 0,
      "outputs": []
    }
  ]
}
